2017-01-16 85 views
-4

所以我想連接一個OnClick方法到按鈕A,但是當我點擊那個按鈕A時,我想要它的其他按鈕(B,C,D,F)將變得可見。但是當我運行代碼時,任何人都可以幫助我?Android Studio。如何訪問OnClick方法中的另一個按鈕?

 public void OnClick(View v) 
{ 
    b.setVisibility(View.VISIBLE); 
    c.setVisibility(View.VISIBLE); 
    d.setVisibility(View.VISIBLE); 
    f.setVisibility(View.VISIBLE); 
} 

我將此方法添加到我在activity_main.xml中的按鈕A.

+2

請張貼YOUT錯誤日誌和你類完整代碼 – firegloves

+0

發佈完整的類。 –

+0

我已經發布全班,希望你能幫助我 –

回答

0

使用此完整代碼:

ImageButton imB1, op1, op2, op3, op4, op5, op6, op7, op8; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    imB1 = (ImageButton) findViewById(R.id.imgB1); 
    op1 = (ImageButton) findViewById(R.id.esc1); 
    op2 = (ImageButton) findViewById(R.id.esc2); 
    op3 = (ImageButton) findViewById(R.id.esc3); 
    op4 = (ImageButton) findViewById(R.id.esc4); 
    op5 = (ImageButton) findViewById(R.id.esc5); 
    op6 = (ImageButton) findViewById(R.id.esc6); 
    op7 = (ImageButton) findViewById(R.id.esc7); 
    op8 = (ImageButton) findViewById(R.id.esc8); 


} 

public void Clicked(View v) { 
    op1.setVisibility(View.VISIBLE); 
    op2.setVisibility(View.VISIBLE); 
    op3.setVisibility(View.VISIBLE); 
    op4.setVisibility(View.VISIBLE); 
    op5.setVisibility(View.VISIBLE); 
    op6.setVisibility(View.VISIBLE); 
    op7.setVisibility(View.VISIBLE); 
    op8.setVisibility(View.VISIBLE); 
} 

而在你的XML更改此:

<ImageButton 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
app:srcCompat="@android:drawable/checkbox_off_background" 
android:layout_marginLeft="62dp" 
android:layout_marginStart="62dp" 
android:layout_marginTop="15dp" 
android:id="@+id/imgB1" 
android:layout_alignParentTop="true" 
android:layout_alignParentLeft="true" 
android:layout_alignParentStart="true" 
android:onClick="Clicked" /> //here changes are made 
+1

你已經保存了大寫的方法名稱 – firegloves

+0

我改變了,並且錯誤仍然是 –

+0

@MárioCaldas,錯誤還在後面呢? – W4R10CK

0

你的第一個按鈕應該如下:

<ImageButton 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    app:srcCompat="@android:drawable/checkbox_off_background" 
    android:layout_marginLeft="62dp" 
    android:layout_marginStart="62dp" 
    android:layout_marginTop="15dp" 
    android:id="@+id/imgB1" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:onClick="onClick" /> 

根據最後一行你在你的MainActivity方法應該如下(帶有O的OnClick小寫)的

public void onClick(View v) { 
    op1.setVisibility(View.VISIBLE); 
    op2.setVisibility(View.VISIBLE); 
    op3.setVisibility(View.VISIBLE); 
    op4.setVisibility(View.VISIBLE); 
    op5.setVisibility(View.VISIBLE); 
    op6.setVisibility(View.VISIBLE); 
    op7.setVisibility(View.VISIBLE); 
    op8.setVisibility(View.VISIBLE); 
} 

沒有錯誤日誌我們不能幫助您更精確地比那

+0

我改成小寫但仍然崩潰,我發佈錯誤日誌 –

+0

在Activity中更改並在xml中?同樣的錯誤? – firegloves

相關問題