2017-04-18 55 views
0

我正在开发一个应用程序,我需要广泛地使用动画。我的问题是,我通过Java为我的RelativeLayout添加了一些ImageViews。但在旁边,当我试图添加另一个应用像BELOW,ALIGN_LEFT等先前添加视图的规则的ImageView时,这些图像不会显示出来。这很烦人:(主要是,我的问题是,这些规则(左,右,下)等工作已就动态添加的意见?动态添加视图到RelativeLayout不起作用

+0

是,提供了前面的'V浏览器具有有效的ID。 –

+0

这意味着如果我没有明确地设置这些ImageView的ID,它不应该工作,对吧? – Joy

回答

1

问:做这些规则(左,RIGHT_OF,BELOW等)已动态添加视图

答:。是他们很多工作示例代码

RelativeLayout rLayout = (RelativeLayout) findViewById(R.id.rlayout); 
RelativeLayout.LayoutParams lprams = new RelativeLayout.LayoutParams(
     RelativeLayout.LayoutParams.WRAP_CONTENT, 
     RelativeLayout.LayoutParams.WRAP_CONTENT); 
Button tv1 = new Button(this); 
tv1.setText("Hello"); 
tv1.setLayoutParams(lprams); 
tv1.setId(1); 
rLayout.addView(tv1); 

// second Button 
RelativeLayout.LayoutParams newParams = new RelativeLayout.LayoutParams(
     RelativeLayout.LayoutParams.WRAP_CONTENT, 
     RelativeLayout.LayoutParams.WRAP_CONTENT); 
Button tv2 = new Button(this); 
tv1.setText("Hello2"); 
newParams.addRule(RelativeLayout.RIGHT_OF, 1); 
tv2.setLayoutParams(newParams); 
tv2.setId(2); 
rLayout.addView(tv2); 

您需要设置ID,然后给你想要添加的这一观点无论规则

+0

非常感谢你:)我发现我的错误!我没有设置这些ImageView的ID。愚蠢的我:p – Joy

+0

不客气。如果这有助于你请upvote并接受答案。 – ankit