我是GDK的新手,我尝试用LiveCard在cardScrollView中显示自定义卡。
下面是创建cardScrollView的代码:
cardScrollView = new CardScrollView(this);
LiveCard liveCard;
List<LiveCard> cardList = new ArrayList<LiveCard>();
for (int i = 0; i < definitions.size(); i++) {
liveCard = new LiveCard(this, "LiveCardWord");
RemoteViews viewCard = new RemoteViews(getPackageName(),R.layout.layout_livecard);
viewCard.setTextViewText(R.id.wordCard, definitions.get(i).word);
viewCard.setTextViewText(R.id.typeCard, definitions.get(i).type);
liveCard.setViews(viewCard);
cardList.add(liveCard);
}
LiveCardScrollAdapter adapter = new LiveCardScrollAdapter(cardList);
cardScrollView.setAdapter(adapter);
cardScrollView.activate();
setContentView(cardScrollView);这是我的适配器:
public class LiveCardScrollAdapter extends CardScrollAdapter {
private List<LiveCard> mCards;
public LiveCardScrollAdapter(List<LiveCard> cards) {
mCards = cards;
}
@Override
public int getCount() {
return mCards.size();
}
@Override
public Object getItem(int position) {
return mCards.get(position);
}
@Override
public int getPosition(Object arg0) {
for (int i = 0; i < mCards.size(); i++) {
if (getItem(i).equals(arg0)) {
return i;
}
}
return AdapterView.INVALID_POSITION;
}
@Override
public View getView(int arg0, View arg1, ViewGroup arg2) {
return null;
// return ((LiveCard) mCards.get(arg0)).getView(); //=> don't know how show view....
}}
我找不到如何为适配器在LiveCard中获取视图,如果它有效,是否是正确的方法?
谢谢你的帮助!
发布于 2014-07-11 19:23:38
您不能在硬卷轴视图中使用livecards。LiveCards用于创建服务并将其显示在时间屏幕的左侧。在GDK应用程序中,您可以使用Cards作为视图。
public View getView(int arg0, View arg1, ViewGroup arg2) {
return mCards.get(arg0).getView();
}https://stackoverflow.com/questions/24698569
复制相似问题