2017-08-31 39 views
0

如何保存活动的UI?我的意思是我的服务通知活动,活动绘制新的按钮。当我点击按钮时,我被移动到另一个活动,在那里我有一个按钮,当点击该按钮时,该活动将调用finish()方法。不幸的是,接下来出现的活动只是空白,我不知道发生了什么。在Android中保存自动生成的gui活动

这是第一个按钮,移动到第二活动

listener = new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     Toast.makeText(getApplicationContext(), v.getTag().toString(), Toast.LENGTH_SHORT).show(); 
     final String[] data = v.getTag().toString().split("\\|"); 
     new Thread(new Runnable() { 
      @Override 
      public void run() { 
      mService.sendMessage("acceptRequest|"+data[0]+"|"+data[1]+"|"+data[2]); 
      } 
     }).start(); 
     Intent i = new Intent(getApplicationContext(), CurrentDestination.class); 
     i.putExtra("name",data[0]); 
     i.putExtra("location",data[1]); 
     i.putExtra("action",data[2]); 
     startActivityForResult(i,1); 
    } 
}; 

这是第二个按钮

b.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     finish(); 
    } 
}); 

我也试过认为是这样的:

b.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     Intent myIntent = new Intent(getApplicationContext(), DriverUpdate.class); 
     myIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);// clear back stack 
     myIntent.setAction("android.intent.action.MAIN"); 
     myIntent.addCategory("android.intent.category.LAUNCHER"); 
     startActivity(myIntent); 
    } 
}); 

回答

0

所以解决方案是在清单中使用此代码:

<intent-filter> 
    <action android:name="android.intent.action.MAIN" /> 
    <category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 

而这种代码活动:

Intent myIntent = new Intent(getApplicationContext(), DriverUpdate.class); 
myIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);// clear back stack 
myIntent.setAction("android.intent.action.MAIN"); 
myIntent.addCategory("android.intent.category.LAUNCHER"); 
startActivity(myIntent);