2014-04-02 38 views
2

使用Glass Scroll Cards演示工作時,我希望能夠在點擊卡後修改卡上的文本。我有一些運氣用card.setText(「blah-blah」)做這件事,但是由於某種原因,文字的設置不起作用,直到我從卡片上滾開然後回滾到卡片。有可能是我不明白CardScrollAdapter,toView方法和setContentView之間的關係。任何人都可以提供建議(或可能是一小部分代碼)?謝謝。如何修改Glass GDK中現有卡上的文本?

回答

0

當您更改卡上的信息以使其刷新時,您必須通知您的適配器。例如:

adapter.notifyDataSetChanged() 
0

在你的活動給你CardScrollView一個OnClickListener這樣的:

 mCardScrollView.setOnItemClickListener(new OnItemClickListener() { 

     @Override 
     public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, 
       long arg3) { 
      mCardList.get(arg2).setText("changed"); 
      //must have this next line to see change reflected in glass 
      mCardScrollAdapter.notifyDataSetChanged(); 
     } 

    }); 

注意,告訴您的數據已更新適配器是必要的(見代碼註釋)。

如果你需要更多的代碼讓我知道,或者如果你可以提供你的代碼,我可以指出什麼是錯的。我一定會看到我的卡片文字被改變了。

一個關閉的想法,我發現它有點令人困惑,在這種情況下的卡水龍頭不可用於KEYCODE_DPAD_CENTER設置的onKeyDown。在這個意義上,CardScrollViews需要像Android中的ListView一樣對待,就像我的代碼示例中所見。

相關問題