2013-10-28 68 views
4

所以现在我无法在下一个按钮处于活动的最后一页时无法点击。截至目前它回到第一个屏幕。我如何制作它,以便它知道何时灰显按钮,或在用户进入最后一个屏幕时使其不可点击。如何使按钮不可点击

这里是我的代码:

public class ReadingActivity extends Activity implements OnClickListener { 

    private ViewFlipper viewFlipper; 
    Button btnNext, btnPrev; 
    private float lastX; 

    /** Called when the activity is first created */ 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.reading); 
     viewFlipper=(ViewFlipper)findViewById(R.id.view_flipper); 
     btnNext=(Button)findViewById(R.id.btnNext); 
     btnPrev=(Button)findViewById(R.id.btnPre); 


     btnNext.setOnClickListener(this); 
     btnPrev.setOnClickListener(this); 

     btnNext.setEnabled(true); 
    } 



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

     switch(arg0.getId()){ 
     case R.id.btnNext: 
      viewFlipper.setInAnimation(this, R.anim.in_from_right); 
      viewFlipper.setOutAnimation(this, R.anim.out_to_left); 
      viewFlipper.showNext(); 
      break; 
     case R.id.btnPre: 
      viewFlipper.setInAnimation(this, R.anim.in_from_left); 
      viewFlipper.setOutAnimation(this, R.anim.out_to_right); 
      viewFlipper.showPrevious(); 
      break; 
     } 

    } 


} 

回答

4

可以设置OnClickListener为null,像这样

btnNext.setOnClickListener(null); 
+0

这是做什么的确切?一种新的android开发..谢谢! – Dan

+0

它会停止OnClick方法从该对象的触发,因为它从(this)设置为(null),它会从对象 – JRowan

+0

中删除侦听器,并且如果要将其放回到按钮上,请将其设置回(这)从null – JRowan

2

我觉得你只是想这个方法

button.setClickable(false); 
+0

感谢我试图button.setClickable已经但是它没有做什么,我想.. :(我有两个按键一致所以只图像而改变。如果我做button.setClickable它将完全禁用它.. – Dan

1

要使按钮灰色和UnClickable

android:enabled="false"按钮标签

并使用代码button.setEnabled(false);