Android 无法将多个子视图添加到父视图

Android 无法将多个子视图添加到父视图,android,android-linearlayout,android-relativelayout,layout-inflater,Android,Android Linearlayout,Android Relativelayout,Layout Inflater,我正在尝试向线性布局添加多个相对布局。我正在使用以下代码行 LayoutInflater inflator = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE); LinearLayout item = (LinearLayout)findViewById(R.id.reviews); for(int i=0 ; i<2 ; i++){

我正在尝试向线性布局添加多个相对布局。我正在使用以下代码行

        LayoutInflater inflator = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        LinearLayout item = (LinearLayout)findViewById(R.id.reviews);

        for(int i=0 ; i<2 ; i++){
            View child = inflator.inflate(R.layout.review_item, null);
            child.setId(i);
            child.setTag(i);
            item.addView(child);
        }
LayoutInflater充气器=(LayoutInflater)getSystemService(Context.LAYOUT\u充气器\u SERVICE);
LinearLayout项目=(LinearLayout)findViewById(R.id.reviews);

for(int i=0;i在for循环之外声明
LinearLayout项。
按照您的操作方式,每次运行for循环时,变量值都将被覆盖。因此,您的方法应如下所示:

public void somemethod(){

     LayoutInflater inflator = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
     LinearLayout item = (LinearLayout)findViewById(R.id.reviews);
     for(int i=0 ; i<2 ; i++)
        {

            View child = inflator.inflate(R.layout.review_item, null);
            child.setId(i);
            child.setTag(i);
            item.addView(child);
        }

}
public void somemethod(){
LayoutFlater充气器=(LayoutFlater)getSystemService(Context.LAYOUT\u充气器\u服务);
LinearLayout项目=(LinearLayout)findViewById(R.id.reviews);

对于(int i=0;i您需要将前两行置于for循环之外。您正在将LinearLayout膨胀两次,这将覆盖您膨胀的第一个布局,而不是添加到其中。通过在for循环开始之前放置这两行,您将两个子视图添加到单个LinearLayout。

您的LinearLayout的方向是什么参考我们的线性父布局只有一次,把它放在外面循环和充气。@DJphy方向是水平的。我使它垂直,它工作了。谢谢。你能把它作为答案发布吗。不需要它工作正确这就足够了,还要遵循我在下面的帖子中所做的评论/答案。应该可以了,快乐编码…@DJphy我做了f请关注评论并再次感谢:)