2012-06-23 35 views
6

Tôi có một nút và khi tôi nhấn nút, tôi muốn xóa nút đó (không làm cho nút ẩn). Tôi đọc rằng tôi có thể làm điều đó bằng cách sử dụng layout.removeView(mybutton) nhưng bố cục là gì? và làm thế nào tôi có thể nhận được nó trong hoạt động của tôiNút xóa Android động

Button showQuestion; 
private void initialize() { 
    showQuestion = (Button) findViewById(R.id.bAnswerQuestionShowQuestion); 
} 
public void onClick(View v) { 
    switch (v.getId()) { 
     case R.id.bAnswerQuestionShowQuestion: 
       showQuestion.setVisibility(View.INVISIBLE); 
       //Here i want to delete the button 
       question.setVisibility(View.VISIBLE); 
       theAnswer.setVisibility(View.VISIBLE); 
       answerQuestion.setVisibility(View.VISIBLE); 
       showChoices.setVisibility(View.VISIBLE); 
       showHint.setVisibility(View.VISIBLE); 
      break; 
    } 
} 
+1

Bố cục là nút Xem bố mẹ bạn. –

Trả lời

16

thấy link

ViewGroup layout = (ViewGroup) button.getParent(); 
if(null!=layout) //for safety only as you are doing onClick 
    layout.removeView(button); 
+0

nhà phát triển trang web android bị cấm ở quốc gia của tôi – Totti

+0

chức năng showQuestion.getParent(). RevmoveView không tồn tại – Totti

+0

loại truyền trong ViewGroup như trong mã ........ –

1

Layout là Layout mẹ của nút của bạn, thường là một RelativeLayout hoặc LinearLayout.

Bạn có thể lấy nó như sau:

ViewParent layout = button.getParent(); 
+0

cảm ơn bạn đã giúp đỡ – Totti

3

Bạn có thể sử dụng

 button.setVisibility(View.GONE); 
+0

cảm ơn bạn đã giúp đỡ – Totti

10

tôi có một nút và khi tôi bấm nó, tôi muốn loại bỏ nó (không làm cho nó vô hình)

=> Bạn đã làm như sau:

showQuestion.setVisibility(View.INVISIBLE); 

Hãy thử với:

showQuestion.setVisibility(View.GONE); 

FYI, INVISIBLE chỉ che giấu quan điểm nhưng thể chất có mặt tại đó và đi giấu như loại bỏ cũng có sự hiện diện thể chất là tốt.

+1

cảm ơn bạn đã giúp đỡ, nó hoạt động – Totti

Các vấn đề liên quan