这是我第一次尝试制作Android应用程序或处理java,所以请耐心等待我的问题:(
我要做的是让屏幕1有几个按钮,按下时,它会将用户带到另一组按钮的屏幕-2。按下屏幕-2中的按钮,用户将被带到一个新屏幕,其中包含一些文本,基于他按下的按钮,以及按顺序。
与每个屏幕中的其他按钮相同。
我已经拥有的是屏幕1充满按钮及其ID。我不确定下一部分何处开始。我可以为screen-1中的每个按钮创建一个onClick活动,但是screen-3如何记住在屏幕-1和屏幕-2上按下了哪些按钮?
activity_main.xml中
<Button
android:id="@+id/button1"
android:layout_height="wrap_content"
android:layout_width="110dp"
android:layout_weight="1"
android:text="@string/button1"
android:onClick="button1OnClick"/>
<Button
android:id="@+id/button2"
android:layout_height="wrap_content"
android:layout_width="110dp"
android:layout_weight="1"
android:text="@string/button2"
android:onClick="button1OnClick2"/>
MainActivity.java
public class Click extends Activity {
protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.activity_main.xml);
final Button button = (Button) findViewById(R.id.button1);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// open up screen 2? do i use intent??
}
});
}
}
activity_main2.xml
<Button
android:id="@+id/button1"
android:layout_height="wrap_content"
android:layout_width="110dp"
android:layout_weight="1"
android:text="@string/button1"
android:onClick="button1OnClick"/>
<Button
android:id="@+id/button2"
android:layout_height="wrap_content"
android:layout_width="110dp"
android:layout_weight="1"
android:text="@string/button2"
android:onClick="button1OnClick2"/>
MainActivity2.java
public class Click extends Activity {
protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.activity_main2.xml);
final Button button = (Button) findViewById(R.id.button2);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// open up screen 3?
}
});
}
}
screen-1和screen-2将共享同一组按钮。屏幕3将显示哪个顺序,以及按下了哪些按钮。
答案 0 :(得分:2)
答案 1 :(得分:0)
在开始下一个活动时,您会在意图中传递该信息。
例如,在您的protected void onCreate(Bundle savedInstanceState)
中,您可以执行以下操作:
Bundle extras = getIntent().getExtras();
if (extras != null) {
// test for the arg you passed in and extract value eg
String foostr = extras.getString(FOO_STRING);
int fooint = extras.getInt(FOO_INT);
}
并且在开始活动的来电者中
Intent intent = new Intent(this, Screen-2.class);
intent.putExtra(FOO_INT,myInt);
intent.putExtra(FOO_STRING,myString);
startActivity(intent);