这只是一个简单的登录活动,但我需要帮助,因为我真的与v变量堆栈,无法在我的java文件的switch部分解析。我是Android开发的新手,这是我刚开始的一个项目。我正在使用Eclipse。这是我的java文件:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login_screen);
name=(EditText) findViewById(R.id.editText1);
pass=(EditText) findViewById(R.id.editText2);
login=(Button) findViewById(R.id.button1);
cancel=(Button) findViewById(R.id.button2);
login.setOnClickListener((android.view.View.OnClickListener) this);
cancel.setOnClickListener((android.view.View.OnClickListener) this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.login_screen, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
String na=name.getText().toString();
String pa=pass.getText().toString();
switch (v.getId()) {
case R.id.button1:
if(na.equals("BoltonLab")&& pa.equals("password")){
Intent openmainscreen=new Intent ("com.example.handjointstemp.MAINSCREEN");
startActivity(openmainscreen);
}
break;
case R.id.button2:
name.setText(" ");
pass.setText(" ");
break;
default:
break;
}
}
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
finish();
}
答案 0 :(得分:0)
首先将此添加到您的活动声明中,实现clickListener接口。
public class MyActivity extends Activity implements View.OnClickListener
它强制您使用以下签名覆盖onClick方法
@Override
public void onClick(View v)
您可以访问v.getId()并将其与按钮的ID进行比较。
另外,在你的onCreate中,设置你需要的按钮的onClickListener:
login.setOnClickListener(this) ;
cancel.setOnClickListener(this);