Java 从子级向上导航时,如何在父级中执行特定操作?
我对Android应用程序编程非常陌生,我正试图通过一个简单的计算器程序来掌握一些概念,该程序将包含许多无用的功能。基本上,我在主活动中有两个EditText(输入两个数字)和一个RadioGroup(选择要对数字执行的数学运算),我在子活动中显示总数。这一切都很好。我的问题是,当我点击向上按钮时,我希望总数在MainActivity中显示为first EditText的提示。基本上允许用户进行一系列简单的计算,而无需重新输入以前的总数。(如果EditText保留为空,则使用提示值)我已尝试过在NavigateUpFromChild(Activity child)上使用提示值,但没有效果。这可能吗 这是到目前为止我的代码 MainActivity.java:Java 从子级向上导航时,如何在父级中执行特定操作?,java,android,navigation,android-navigation,up-navigation,Java,Android,Navigation,Android Navigation,Up Navigation,我对Android应用程序编程非常陌生,我正试图通过一个简单的计算器程序来掌握一些概念,该程序将包含许多无用的功能。基本上,我在主活动中有两个EditText(输入两个数字)和一个RadioGroup(选择要对数字执行的数学运算),我在子活动中显示总数。这一切都很好。我的问题是,当我点击向上按钮时,我希望总数在MainActivity中显示为first EditText的提示。基本上允许用户进行一系列简单的计算,而无需重新输入以前的总数。(如果EditText保留为空,则使用提示值)我已尝试过在
public class MainActivity extends Activity {
//! Irrelevant code removed !//
/** Variable Declaration */
Float total; // Holds a running total
EditText num1; // Text box for first number
//! Irrelevant code removed !//
@Override
public boolean onNavigateUpFromChild(Activity child) {
num1.setHint(total.toString());
return onNavigateUp();
}
//! Irrelevant code removed !//
}
public class DisplayTotalActivity extends Activity {
//! Irrelevant code removed !//
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
}
return super.onOptionsItemSelected(item);
}
}
DisplayTotalActivity.java:
public class MainActivity extends Activity {
//! Irrelevant code removed !//
/** Variable Declaration */
Float total; // Holds a running total
EditText num1; // Text box for first number
//! Irrelevant code removed !//
@Override
public boolean onNavigateUpFromChild(Activity child) {
num1.setHint(total.toString());
return onNavigateUp();
}
//! Irrelevant code removed !//
}
public class DisplayTotalActivity extends Activity {
//! Irrelevant code removed !//
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
}
return super.onOptionsItemSelected(item);
}
}
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mdiehl.calculator"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="16"
android:targetSdkVersion="17" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.mdiehl.calculator.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.mdiehl.calculator.DisplayTotalActivity"
android:label="@string/title_activity_display_total"
android:parentActivityName="com.mdiehl.calculator.MainActivity"
android:theme="@android:style/Theme.Holo" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.mdiehl.calculator.MainActivity" />
</activity>
</application>
</manifest>
据我所知,onNavigateUpFromChild方法从未被调用过
提前感谢任何能在这件事上提供帮助的人。难道没有人知道答案,因为onNavigateUpFromChild是新的还是因为这是一个糟糕的问题?