是的,我知道这个问题已被问过几十次之前。但是,在实施多个解决方案时,我的应用程序部队将关闭。我试图做一个按钮点击:确定Android屏幕大小并相应地设置视图的大小
//Determine Screen Size and Create Layout Param
android.view.Display display = ((android.view.WindowManager)getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
int BtnWth = display.getWidth()/4;
int BtnHgt = display.getHeight()/4;
RelativeLayout.LayoutParams BtnDim = new RelativeLayout.LayoutParams(BtnWth, BtnHgt);
// Declare MPC pads
Button pad1 = (Button) findViewById(R.id.pad1);
public void onClick(){
// Set width and height of each pad
pad1.setLayoutParams(BtnDim);
}
而且还使用onDraw()方法。两者都在真正的Android 3.1设备上关闭。
这不是从你的代码清晰,但似乎你正在初始化你的值超出函数的范围。这可能发生在服务没有准备好的地方,或者很可能是布局没有加载的地方,这可能会返回空值(例如pad1)。这种行为会触发部队关闭。 你尝试从方法加载你的值(onCreate,可能)?此外,您可以尝试捕获代码,并在跟踪通道上输出异常详细信息,以便您更好地了解可能导致FC的原因。 – XMoby 2012-02-26 20:11:05
是的,我尝试了onCreate(),我听说可能会导致值尚未加载,所以然后我试图在onDraw(),它也强制关闭。我会尝试投掷并捕捉异常。 – Cameron 2012-02-26 20:17:03
好吧,我从来没有在Android中引发异常。我将如何去显示结果? – Cameron 2012-02-26 20:22:12