Двойное нажатие кнопки - PullRequest
0 голосов
/ 21 марта 2012

эй, я создаю приложение с двумя переключателями, которые меняют фон XML.

однако, если пользователь касается кнопки 1, то 2 я хочу, чтобы он изменил фон с pic1 на pic2 (при первом нажатии кнопки), затем pic4 (при втором нажатии кнопки)

но если пользователь касается кнопки 2, то 1 я хочу, чтобы он изменил фон с pic1 на pic3 (при первом нажатии кнопки), затем pic4 (при втором нажатии кнопки)

на данный момент это мой сценарий;

package com.jamie.game;

import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class level2 extends Activity implements OnClickListener{

    Button button1;
    View targetView;
    Button button2;

protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.level2);
    targetView = (View)findViewById(R.id.level2);
    button1 = (Button) findViewById(R.id.button1);
    button1.setVisibility(View.VISIBLE);
    button1.setBackgroundColor(Color.TRANSPARENT);
    button1.setOnClickListener((android.view.View.OnClickListener)this);
    button2 = (Button) findViewById(R.id.button2);
    button2.setVisibility(View.VISIBLE);
    button2.setBackgroundColor(Color.TRANSPARENT);
    button2.setOnClickListener((android.view.View.OnClickListener)this);
    }

@Override
public void onClick(View v) {
    // TODO Auto-generated method stub

    if(v.getId()==(R.id.button1)){
            targetView.setBackgroundResource(R.drawable.pic2);
            if(v.getId()==(R.id.button2)){
            targetView.setBackgroundResource(R.drawable.pic4);
    }else
        if(v.getId()==(R.id.button2)){
                targetView.setBackgroundResource(R.drawable.pic3);
            if(v.getId()==(R.id.button2)){
            targetView.setBackgroundResource(R.drawable.pic4);

        }
    }


} 

но все это происходит поочередно между pic2 и pic3 при нажатии кнопки

1 Ответ

1 голос
/ 21 марта 2012

Вероятно, вам нужно создать переменную для хранения идентификатора только что нажатой кнопки.Затем, когда вы получите следующий щелчок, вы можете просто проверить эту переменную, чтобы узнать, соответствует ли последовательность вашему условию.Например, если вы нажмете первую кнопку - сохраните ее идентификатор в переменной int lastChecked, затем, когда вы нажмете вторую кнопку - вы должны указать, равен ли lastChecked идентификатору первой кнопки.Если это так - тогда вы можете запустить свой View изменяющийся код.Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...