Кнопка Android Относительный макет вылетает приложение - PullRequest
0 голосов
/ 04 мая 2018

Я делаю приложение, теперь я хочу сделать кнопку с изображением и текстом на нем. Но каждый раз, когда я нажимаю на кнопку, мое приложение вылетает, однако Android Studio компилируется.

Вот так я и сделал мой xml-код, чтобы сделать макет экрана.

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <RelativeLayout
        android:id="@+id/buttonStartTest"
        style="@android:style/Widget.Button"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        tools:ignore="MissingConstraints">

        <ImageView... />

        <TextView.../>
    </RelativeLayout>

</android.support.constraint.ConstraintLayout>

Java-код:

package com.example.user.ballbounceapp;

import android.annotation.SuppressLint;
import android.app.Activity;
import android.support.v7.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.RelativeLayout;

public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    RelativeLayout StartTest = findViewById(R.id.buttonStartTest);
    StartTest.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            TestActivity();
        }
    });
}

public void TestActivity(){
    Intent intent = new Intent(MainActivity.this,TestActivity.class);
    startActivity(intent);
}

};

1 Ответ

0 голосов
/ 04 мая 2018

Возможно, вы забыли указать свой TestActivity в своем манифесте.
Подробнее о мероприятиях в манифесте здесь: https://developer.android.com/guide/topics/manifest/activity-element

Так что вам понадобится что-то вроде этого: <activity android:name="TestActivity">

Если сбой сохраняется, проблема может быть в вашем TestActivity OnCreate методе.

...