我有两项活动"数据"和" OpenedClass"当我创建一个意图将我重定向到另一个活动时,它不起作用
数据活动
package com.example.androidapp;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class Data extends Activity implements OnClickListener {
EditText sendET;
Button start,startFor;
TextView gotAnswer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.get);
}
private void initialize()
{
sendET= (EditText) findViewById(R.id.etSend);
startFor = (Button) findViewById(R.id.bSAFR);
start = (Button) findViewById(R.id.bSA);
gotAnswer = (TextView) findViewById(R.id.tvGot);
start.setOnClickListener(this);
startFor.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.bSA:
String bread = sendET.getText().toString();
Bundle basket = new Bundle();
basket.putString("key", bread);
Intent a = new Intent(Data.this,OpenedClass.class);
a.putExtras(basket);
startActivity(a);
break;
case R.id.bSAFR:
break;
}
}
}
并打开课堂活动
package com.example.androidapp;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.TextView;
public class OpenedClass extends Activity implements OnClickListener , OnCheckedChangeListener {
TextView question , test;
Button returnData;
RadioGroup selection;
String gotBread;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.send);
initialize();
Bundle b = getIntent().getExtras();
gotBread = b.getString("key");
question.setText(gotBread);
}
private void initialize()
{
question= (TextView) findViewById(R.id.tvQuestion);
test = (TextView) findViewById(R.id.tvText);
returnData = (Button) findViewById(R.id.bReturn);
selection = (RadioGroup) findViewById(R.id.rgAnswers);
returnData.setOnClickListener(this);
selection.setOnCheckedChangeListener(this);
}
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId) {
case R.id.rCrazy:
break;
case R.id.rSerious:
break;
case R.id.rBoth:
break;
}
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
}
}
这是清单
<activity
android:name=".Data"
android:label="@string/app_name" >
</activity>
<activity
android:name=".OpenedClass"
android:label="@string/app_name" >
</activity>
按钮没有将我重定向到第二个活动,请帮助我
答案 0 :(得分:0)
从Data
活动
Intent intent = new Intent(mContext, OpenedClass.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtras(basket);
mContext.startActivity(intent);
mContext
活动中将Data
定义为:
private Context mContext;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mContext = this;
initialize();
// Other codes here.
}
答案 1 :(得分:0)
您忘记在initialize
setContentView
之后致电Data Activity
方法,因此Listener's
未在Button's
上注册。像:
public class Data extends Activity implements OnClickListener {
EditText sendET;
Button start,startFor;
TextView gotAnswer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.get);
initialize();
}
// Rest of your code...
}
答案 2 :(得分:-2)
在您的数据活动中,您的initialize()没有调用。