我有两个项目,在其中创建一组自定义cards
扩展了card
类,然后将它们插入StaggeredView
。
我的问题是,在其中一个项目中,卡拐角会自动圆形,而另一个则没有!
此外,在第二个项目中,滚动符合符合条件并开始!
这是我的代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.staggered_grid);
List<Tour> data = createList(10);
ArrayList<Card> cardes = initCards(data);
mCardArrayAdapter = new CardGridStaggeredArrayAdapter(ListViewPrenota.this, cardes);
CardGridStaggeredView mGridView = (CardGridStaggeredView)
ListViewPrenota.this.findViewById(R.id.carddemo_extras_grid_stag);
if (mGridView != null) {
mGridView.setAdapter(mCardArrayAdapter);
}
}
private ArrayList<Card> initCards(List<Tour> data){
ArrayList<Card> cards = new ArrayList<>();
for(int i = 0; i <= data.size()-1; i++ ){
DeviceCardList card = new DeviceCardList(this, R.layout.cardslib_inner_layout, data.get(i));
cards.add(card);
}
return cards;
}
DeviceCardList
:class
cardslib_inner_layout
:xml文件
staggered_view.xml
:xml文件
解决了它!事实证明,要用Cardlib设置卡片的角,有必要覆盖此值:
<dimen name="cardview_default_radius">yourRadius</dimen>
<dimen name="card_background_default_radius">"yourRadius"</dimen>
来自此文件:dimens.xml
对我来说,只需要覆盖card_background_default_radius