2017-08-31 59 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);