首先,App.getInstance().getWidth(
)给我屏幕宽度。
我正在创建这个LinearLayout:
mainContainer = new LinearLayout(context);
mainContainer.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
它是水平的,它有两个项目,这个:
adContainer = new RelativeLayout(context);
adContainer.setBackgroundColor(Color.BLACK);
adContainer.setLayoutParams(new LayoutParams(App.getInstance().getWidth(), App.getInstance().getHeight()));
adContainer.setGravity(Gravity.CENTER);
mainContainer.addView(adContainer);
和此:
tabView = new ImageView(context);
tabView.setLayoutParams(new LayoutParams(100,140));
tabView.setImageResource(R.drawable.tab);
mainContainer.addView(tabView);
我尝试使用TranslateAnimation移动布局,但我发现它没有显示adContainer右侧的视图tabView
,所以我测试了将mainContainer
置于{{1}的startX位置我可以看到-App.getInstance().getWidth()/2
的一半,但我仍然看不到adContainer
查看tabView的唯一方法是将adContainer宽度设置为小于tabView
。这很奇怪......
为什么我看不到任何项目添加到布局中但是在x位置大于屏幕宽度?
由于
答案 0 :(得分:0)
您已在线性布局的布局参数中提供了包装内容,因此线性布局包含在相对布局和图像视图周围。尝试使用MatchParent。
mainContainer = new LinearLayout(context);
mainContainer.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));