2017-07-24 43 views
0

我需要做一個關卡測驗,我希望下一關按鈕只有在某個按鈕被點擊時纔會出現,該怎麼做? (請詳細,因爲我是新來的Java)如何點擊讓不可見按鈕出現在android中的按鈕?

+0

你有什麼嘗試,直到現在?你可以發佈一些代碼嗎? –

+0

btn.setVisibility(View.GONE); –

+0

但只用於在同一屏幕上執行此操作 –

回答

1

活動答:

btnA.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        Intent i = new Intent(ActivityA.this, ActivityB.class); 
        i.putExtra("isAnswerCorrect",true); 
        startActivity(i); 
       } 
      }); 

活動B:

... 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_b); 
    boolean isAnswerCorrect = getIntent().getBooleanExtra("isAnswerCorrect", false); 
    if (isAnswerCorrect) { 
     next_level_btn.setVisibility(View.VISIBLE); 
    } else { 
     next_level_btn.setVisibility(View.GONE); 
    } 
} 

... 

在這種情況下,活動A是你按下按鈕,而活動B是要顯示活動的下一級按鈕上,

+0

你救了我的工作,謝謝。 –

2

這應該是在你的java代碼:

 certain_button.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        button_next_level.setVisibility(View.Visible); 
       } 
      }); 

在你的XML佈局文件,使button_to_appear作爲不見了。

<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/button_next_level" 
    android:visibility="gone" 
    /> 
+0

我使用了類似的代碼,但只有在兩個按鈕位於同一屏幕上時才能使用。 –

+0

我假設在相同的屏幕上,你的意思是相同的佈局。是的,只有它們在同一個xml佈局中才有效。 –

+0

是的,屏幕=佈局,但我不得不這樣做與不同的佈局中的按鈕 –

相關問題