在XML中,我正在创建一个SwipeDeck
(customView)的新实体,如下所示:
<com.daprlabs.aaron.swipedeck.SwipeDeck
android:id="@+id/swipe_deck"
android:layout_width="match_parent"
android:layout_height="20dp"
swipedeck:card_spacing="15dp"
swipedeck:max_visible="1"
swipedeck:render_above="true"
swipedeck:swipe_enabled="true">
现在我正在尝试以编程方式设置x和y位置。这很好用:
cardStack = (SwipeDeck) findViewById(R.id.swipe_deck);
cardStack.setX(20);
cardStack.setY(10+actionBarHeight);
当我尝试动态设置高度和宽度时,没有任何反应:
cardStack = (SwipeDeck) findViewById(R.id.swipe_deck);
ViewGroup.LayoutParams params = cardStack.getLayoutParams();
params.height=500;
params.width = screen_width - 40;
cardStack.setLayoutParams(params);
一切都发生在onCreate上。有什么想法吗?
答案 0 :(得分:1)
您应该针对包含它的ViewGroup声明“ params”的类型。
例如,替换行
ViewGroup.LayoutParams params = cardStack.getLayoutParams();
与
LinearLayout.LayoutParams params = cardStack.getLayoutParams();
如果您的自定义视图位于LinearLayout内