天天看点

android 点击跳过,android开发里跳过的坑——button不响应点击事件

昨天遇到一个头疼的问题,在手机上按钮事件都很正常,但是在平板上(横屏显示的状态),button点击事件不响应,代码简化如下:

public class Test extends Activity implements OnClickListener{

private Button testButton = null;

@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

testButton = (Button) this.findViewById(R.id.button_test);

testButton.setOnClickListener(this);

}

@Override

public void onConfigurationChanged(Configuration newConfig) {

// TODO Auto-generated method stub

super.onConfigurationChanged(newConfig);

setContentView(R.layout.activity_main);

}

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

switch (v.getId()) {

case R.id.button_test:

Toast.makeText(this, "button click", Toast.LENGTH_SHORT).show();

break;

default:

break;

}

}

}

瞧见红色的部分了吗?因为横屏时重新加载了布局,却没有重新初始化各个控件,所以,相当于没有注册事件,那么点击也就无效了

原文:http://www.cnblogs.com/suxiaoqi/p/6882166.html