2011-04-16 31 views
2

我用下面的代碼來更新文本:如何在android上隱藏小部件文本?

RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget); 
views.setTextViewText(R.id.widget_counter, Long.toString(unreadRecordsCount)); 

,但我怎麼能隱藏它,如果unreadRecordsCount = 0?

+0

我試過'views.setInt(R.id.widget_counter, 「setVisibility」,0);' - 這是行不通的。 – 2011-04-16 13:04:40

+0

'setBoolean'也不起作用。 – 2011-04-16 13:10:28

回答

1

我並不完全熟悉RemoteView s,但通過Android API進行快速檢查,結果如下:RemoteView#setVisibility。我假設它像通常的小部件的setVisibility一樣工作。

5

試試這個:

RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget); 
views.setTextViewText(R.id.widget_counter, Long.toString(unreadRecordsCount)); 
if (unreadRecordsCount == 0) { 
    views.setViewVisibility(R.id.widget_counter, View.INVISIBLE); 
} 
+2

或View.GONE而不是INVISIBLE – Jonas 2011-04-16 13:39:59

+1

'Viev.GONE'清理剩餘的空間。在我的情況下,工作得更好,然後'View.INVISIBLE'。 – 2011-06-23 02:19:39

相關問題