在Android中closures活动

当用户点击一个button时,我正在使用下面的代码来显示“Hello”消息。 在某些应用程序中,这工作正常。 即点击确定button时,活动被解除。 但是在一个应用程序中,点击okbutton后就不会被解除。 该怎么办? 请帮忙。

public class MyClass extends Activity { private TextView labelTxt; private Button okBtn; @Override protected void onCreate(Bundle icicle) { super.onCreate(icicle); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.message); labelTxt = (TextView) findViewById(R.id.txt); labelTxt.setText("Hello"); okBtn = (Button) findViewById(R.id.okBtn); okBtn.setOnClickListener(okBtnClickListener); } private final OnClickListener okBtnClickListener = new OnClickListener() { public void onClick(View v) { finish(); } }; } 

Solutions Collecting From Web of "在Android中closures活动"

我testing了你的代码并修改了一点。 请检查下面

 package test.stackoverflow; import android.os.Bundle; import android.app.Activity; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button btn=(Button) findViewById(R.id.btnOK); btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { finish(); } }); } } 

像这样试试….

 okBtn.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { finish();// Closing Activity } }); 

在您的布局确保您的button被命名为:

 android:id="@+id/okBtn" ..... 

你有import:

 import android.view.View.OnClickListener; 

请看这个教程,它应该帮助:

http://martin.cubeactive.com/android-onclicklitener-tutorial/