Android 安卓智能专注于自身
我怎样才能对同一项活动作出意向 我有一个活动列表,它有前进和后退按钮,当我点击前进按钮时,我想用其他参数启动相同的活动。 为此,我也发送了一个包的意图 但是这个活动似乎不会再被创建了Android 安卓智能专注于自身,android,Android,我怎样才能对同一项活动作出意向 我有一个活动列表,它有前进和后退按钮,当我点击前进按钮时,我想用其他参数启动相同的活动。 为此,我也发送了一个包的意图 但是这个活动似乎不会再被创建了 public class Lektion extends Activity { private int rowCount = 0; private ArrayList<LektionPage> lektionPages = new ArrayList<LektionPage>
public class Lektion extends Activity {
private int rowCount = 0;
private ArrayList<LektionPage> lektionPages = new ArrayList<LektionPage>();
private int lektionPage = 0;
private Bundle bundle;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.lektion);
bundle = this.getIntent().getExtras();
String lektionNummer = bundle.getString("LektionNummer");
setTitle("Lektion "+lektionNummer);
try{
lektionPage = bundle.getInt("LektionPage");
} catch(Exception e){}
forwardImageButton.setOnTouchListener(new OnTouchListener(){
public boolean onTouch(View view, MotionEvent me) {
if(lektionPage == rowCount){
return false;
}
Log.i("ontouch", ""+lektionPage);
Intent intent = new Intent(Lektion.this, Lektion.class);
bundle.putInt("LektionPage", lektionPage++);
intent.putExtras(bundle);
return true;
}
});
}
公共类Lektion扩展活动{
私有整数行计数=0;
private ArrayList lektionPages=new ArrayList();
私有整数lektionPage=0;
私有包;
/**在首次创建活动时调用*/
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.lektion);
bundle=this.getIntent().getExtras();
String lektionnumer=bundle.getString(“lektionnumer”);
片名(“Lektion”+lektionNummer);
试一试{
lektionPage=bundle.getInt(“lektionPage”);
}捕获(例外e){}
setOnTouchListener(新的OnTouchListener(){
公共布尔onTouch(视图、MotionEvent me){
if(lektionPage==rowCount){
返回false;
}
Log.i(“ontouch”和“+lektionPage”);
意向意向=新意向(Lektion.this,Lektion.class);
bundle.putInt(“LektionPage”,LektionPage++);
意向。额外支出(捆绑);
返回true;
}
});
}
这是一种处理您的需求的笨拙(可能是不可能的)方法
考虑使用拆分功能和导航。我觉得这可以通过使用popper活动启动模式和活动onNewIntent方法中的一些逻辑来实现 我建议对您的活动使用单任务启动模式
我希望它能帮上忙。你只是在创造意图,而没有激发它 你需要
startActivity(intent);
为了实际执行的意图
但是我认为您应该只更改活动视图等的内容,而不是一次又一次地创建活动,但是我如何才能只更改活动中的内容?取决于页面显示的实际内容。必须至少有一个
视图
元素。您可以在onTouch
W中更改其代码/内容当我这样做的时候…我的onCreate方法中的代码是否与newIntent方法中的代码相同?对我来说似乎有点尴尬…但我不知道如何在这里做得更好…SingleTop是否也适合我的需要?您可以在onNewIntent中编写代码,然后在onCreate中使用getIntent方法调用onNewIntent。