【问题标题】:Assigning two intents to a single button将两个意图分配给单个按钮
【发布时间】:2013-10-12 07:23:13
【问题描述】:

所以,这是我的代码(运行良好)。我想要做的是在mPosition==messagecount 时更改按钮的操作。我是 Android 新手,所以请耐心等待。我试图在这一点上添加一个新的意图来开始一个新的activityonSwitch(xml 中的按钮有android:onClick="onswitch")。有没有办法做到这一点,还是我只是走错了路?我目前有一个单独的按钮来开始活动,但我希望一个按钮来做这两个。非常感谢您的帮助。

public void onSwitch(View view) {
    TutorialSwitcher.setBackgroundResource(imageIDs[mPosition]);
    mPosition = (mPosition + 1);
    if(mPosition==messageCount)
        mPosition=0;

}

【问题讨论】:

  • 我想在 if Intent i=yourFirstIntent 和 if(mPosition==messgeCount){ i=secondIntent}
  • 您可以在onClick 方法中使用if-else 条件,并且可以控制何时要启动哪个意图。

标签: android button android-activity imageswitcher


【解决方案1】:

实际上你想用按钮做什么。你能解释清楚一点吗。 您可以根据您的要求使用 settag 作为按钮,并在单击按钮时使用 view.gettag() 来获取标签。通过这种方式,您可以多次使用同一个按钮。 如果您还需要其他东西,请告诉我。

【讨论】:

  • 这是一个评论而不是一个答案。所以把它放在 cmets 里面。
  • 给定一个解决方案。
【解决方案2】:

你可以使用 If 语句来解决这个问题,试试吧`

if (mPosition == messagecount){
Intent i = new Intent(CurrentActivity.this, newActivity.class);
startActivity(i);

【讨论】:

    【解决方案3】:

    如果您在 xml 方法 android:onClick="onswitch" 和您的 java 类 onSwitch(View view) 中定义 - 您的方法 onSwitch 从未被调用过。 “onswitch”不等于“onSwitch”,但我希望这是一个差距。

    如果你只想为一个按钮调用这个方法,如果你为这个按钮使用onClickListener会更好。请看下面的示例代码:

            Button btn = (Button) this.findViewById(R.id.button1);
        btn.setOnClickListener(new OnClickListener() {
    
            @Override
            public void onClick(View arg0) {
    
                mPosition = (mPosition + 1);
                if (mPosition == messageCount) {
                    startActivity(new Intent(MainActivity.this, Activity1.class));
                    // TODO do action 1.
                } else {
                    startActivity(new Intent(MainActivity.this, Activity2.class));
                    // TODO do something else.
                }
            }
        });
    

    【讨论】:

    • 这完全符合我的需要。不过,我不需要“其他功能”。此外,“onswitch”交易只是听错了,我的错。奇怪的是,我昨天试过这个,但它没有用。我试图命名意图,但它一直在给我抛出错误。你能解释一下为什么会这样吗?
    • 请附上您的 LogCat 日志。如果我们能看到您有哪些错误,将会非常有帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多