首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >记住来自不同屏幕的按钮点击

记住来自不同屏幕的按钮点击
EN

Stack Overflow用户
提问于 2013-06-19 04:33:00
回答 2查看 183关注 0票数 0

这是我第一次尝试制作android应用程序,或者处理java,所以请耐心等待我的问题:(

我要做的是让屏幕上有几个按钮,当按下时,它会把用户带到另一组按钮的屏幕上。按下-2\f25 screen-2 \f6(屏幕)中的按钮后,用户将被带到一个新的屏幕,并根据按下的按钮和顺序显示一些文本。

每个屏幕上的其他按钮也是如此。

我已经有了一个满是按钮和ids的屏幕1。我甚至不确定下一部分从哪里开始。我可以为screen-1中的每个按钮创建onClick活动,但是screen-3如何记住screen-1和screen-2上按下的按钮?

activity_main.xml

代码语言:javascript
复制
<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

代码语言:javascript
复制
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

代码语言:javascript
复制
<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

代码语言:javascript
复制
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将显示按下的顺序和按钮。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-19 04:43:25

您需要了解如何通过intents传递数据和参数。

看看这个:

How do I pass data between Activities in Android application?

票数 2
EN

Stack Overflow用户

发布于 2013-06-19 04:41:39

当您开始下一个活动时,您可以在意图中传递该信息。

例如,在你的protected void onCreate(Bundle savedInstanceState)中,你可以这样做:

代码语言:javascript
复制
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);
}

在启动活动的调用者中,

代码语言:javascript
复制
Intent intent = new Intent(this, Screen-2.class);
intent.putExtra(FOO_INT,myInt);
intent.putExtra(FOO_STRING,myString);
startActivity(intent);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17178384

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档