2014-03-26 25 views
0

我的自定義適配器類 -如何跟蹤項目的顏色在GridView中的活動

public class CAdapter extends BaseAdapter { 
private Context context; 
private final String[] values; 
public int[] clicked; 
public int[] allVisited;... 

如果點擊的是一個 - 該項目是黃色的 - 表示GridView控件這個項目已被點擊至少一次 如果allVisited爲1 - 該項目爲紅色 - 表示在項目點擊觸發的子活動中與該項目相關的條件。

該項目是一個imageview + textview,其背景色設置在gridview活動的onitemclick oncreate或getview在自定義適配器類中。

如何跟蹤激活和停用活動之間的這些值。 我們是否需要通過在數據庫活動之間傳遞值來做到這一點,即使這樣做並不明顯。

此外,使用設備的後退按鈕或單擊活動中的按鈕返回到其他活動會更好。

除此之外 - 當主要活動中單擊此自定義按鈕(如退出)時是否可以完全停止運行應用程序?

請幫忙。我是Android新手。謝謝,桑傑。

回答

0

首先退出主要活動,只需撥打​​ 此方法關閉所調用的活動,因此您也可以將其用於關閉輔助活動。它基本上模擬了後退鍵。

要保持背景顏色,只需打開主活動的活動,並在完成後使用完成方法關閉它們。它應該在返回到主要活動時恢復最後的佈局。


啓動的活動是這樣的:

startActivityForResult(activity, REQUESTED_RETURN_RESULT); 

在您的主要活動你重寫了OnActivityResult方法:

protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{ 
    switch (requestCode) 
    { 
     case REQUESTED_RETURN_RESULT: 
      handleStuff(data); 
     break; 
     case SOME_OTHER_REQUEST: 
      handleSomethingElse(data); 
     break; 
    } 
    super.onActivityResult(requestCode, resultCode, data); 
} 

在您的輔助活動改變完成()方法包括:

Intent _result = new Intent();    
_result.setData(DATA_TO_RETURN_TO_THE_MAIN_ACTIVITY); 
setResult(Activity.RESULT_OK, _result); 
finish(); 

你也可以通過返回並檢查結果來檢查它是否是正確的數據。代碼

+0

確定Gr8。我試過了,那就是它的工作方式 - 謝謝 - 只有系統消息 - 不幸的是,當我關閉主要活動時,應用程序已停止 - 是否有可能將此消息更改爲再見,例如... –

+0

也在我的gridview活動我着色一些項目取決於在子活動中的一些條件 - 所以當活動結束時,我需要知道每個項目的國旗狀態。我該如何做到這一點 - 要麼我必須通過一個包,但爲此我將不得不激活gridview活動 - 或者我可以從子活動中的代碼控制父活動中的顏色。請儘快寫信。謝謝,桑傑。 –

+0

如果它說「不幸的是應用程序已停止」,這意味着它已經崩潰。爲了解決這個問題,我需要看到堆棧跟蹤。 –

相關問題