Android子活动未链接到其他子活动

时间:2018-03-29 02:50:46

标签: android android-studio android-intent android-activity onclicklistener

我可以从父MainActivity.java文件中打开子活动,但是,我无法从另一个子活动中打开子活动。例如,我希望基本上有一个主页面,允许您在子活动中从一个页面到另一个页面,就像一个故事。我尝试过使用一个点击监听器的意图,如下所示:

TextView backBtn = findViewById(R.id.backButton);

    // Create onClickListener
    backBtn.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent bloodActivity = new Intent(SinActivity.this, BloodActivity.class);
            startActivity(bloodActivity);
        }
    });

我也尝试过使用finish();但是,在onClick方法中,它不会终止当前子活动甚至返回到MainActivity.java文件。如果需要更多可视化,我将发布一个指向GitHub存储库的链接。我很感激我能得到的任何帮助。

https://github.com/uenvymenow/EvangelismApp/tree/master/app/src/main

1 个答案:

答案 0 :(得分:1)

我下载你的项目并找到你的问题。

以下打击:

 TextView backBtn = (TextView) findViewById(R.id.backTextView);
    backBtn.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            onBackPressed();
        }
    });

    TextView continueTextView = (TextView)findViewById(R.id.continueTextView);
    continueTextView.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent bloodActivity = new Intent(SinActivity.this, BloodActivity.class);
            startActivity(bloodActivity);
            finish();
        }
    });

<强>但

您的听众不是 TextViewBtn 在ScrollView下的问题,因此用户无法点击 TextViewBtn

尝试修复布局 activity_sin.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.example.aaron.evangelismapp.SinActivity">

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <TextView
            android:id="@+id/sinWordTextView"
            style="@style/sinHeader"
            android:layout_width="match_parent"
            android:layout_height="@dimen/sinHeader" />

        <TextView
            android:id="@+id/sinScriptureTextView"
            style="@style/sinScripture"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

        <ImageView
            android:id="@+id/sinImage"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:scaleType="fitCenter" />

    </LinearLayout>


</ScrollView>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:gravity="center_horizontal"
    android:orientation="horizontal"
    android:weightSum="2">

    <TextView
        android:id="@+id/backTextView"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:layout_weight="1"
        android:gravity="center"
        android:text="@string/backText" />

    <TextView
        android:id="@+id/continueTextView"

        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="center_horizontal"
        android:text="@string/continueText" />
</LinearLayout>

希望有所帮助。