您好,我有我的自定義GridViewAdapter
,我有7個語音。在GridView中爲未讀通知添加徽章Android
String[] description = new String[]{"test", "test1", "test2", "test3", "test4", "test5", "notification"};
int[] imageId = {
R.mipmap.test,
R.mipmap.test1,
R.mipmap.test2,
R.mipmap.test3,
R.mipmap.test4,
R.mipmap.test5,
R.mipmap.notification,
};
而在我的數據庫(MySQL數據庫)我有一個通知表,我知道如果一個通知是否讀取或不。 所以我想在元素通知中添加一個徽章,其中的通知數量未讀。
網格元素的實際佈局是:
<de.hdodenhof.circleimageview.CircleImageView xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/image"
android:layout_gravity="center"
android:layout_width="88dp"
android:layout_height="88dp"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp"
app:civ_border_width="2dp"
app:civ_border_color="#FF000000"
/>
<TextView
android:id="@+id/description"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15dp"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp"
/>
而且我相信,如果我加入的RowLayout一個TextView(如下圖所示),可能是工作
<TextView
android:id="@+id/unread"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone"
/>
但用這種方法我會所有元素見TextView
。 如何才能將此textView僅用於一個元素並在通知添加時刷新編號?
我看到這個帖子https://github.com/leolin310148/ShortcutBadger 和https://github.com/jgilfelt/android-viewbadger 但似乎不推薦使用。
我Adapter
是:
public class GridViewDashboardAdapter extends BaseAdapter {
public class Holder
{
TextView tv;
TextView notification;
ImageView img;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
Holder holder = new Holder();
View rowView;
rowView = inflater.inflate(R.layout.dashboard_grid, null);
holder.tv=(TextView) rowView.findViewById(R.id.description);
holder.notification=(TextView) rowView.findViewById(R.id.description);
holder.img=(de.hdodenhof.circleimageview.CircleImageView) rowView.findViewById(R.id.image);
holder.tv.setText(result[position]);
holder.img.setImageResource(imageId[position]);
/* pseudo code */
if(notificationUnread.size()>0){
holder.notification.setVisibility(View.VISIBLE);
}
}
}
您沒有顯示將TextView的可見性更改爲可見的代碼。 –
你好,謝謝,我添加了代碼段 – LorenzoBerti
什麼是'notificationUnread'? –