我正在开发一个可以进行一些计算的应用程序。它由一个水平linearLayout
组成,每个布局都有2个编辑文本和一个微调器。我想以这样的方式制作它,即当用户需要添加更多细节时,用户可以通过按钮点击添加布局。
在我的XML中,我设置了android:visibility="gone"
,在Java中,我设置了onClick
方法,以使"去掉#34;线性布局到view.VISIBLE
。它工作但只要我点击+按钮就会显示所有线性布局。我希望它们一个接一个出现(一个出现,另一个出现"消失了#34;直到我再次点击按钮)
答案 0 :(得分:0)
在这种情况下使用片段。您可以添加任何片段以通过事件进行查看。
答案 1 :(得分:0)
您可以使用Layout inflater。
创建另一个资源文件,在其中添加您需要的布局和小部件 例如item_resource.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/linear"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" />
<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<!-- other layout elements which are required -->
</LinearLayout>
然后在onClick事件上以实际方式夸大布局
LayoutInflater inflater = (LayoutInflater)context.getSystemService
(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater .inflate(R.layout.item_resource,null);
Button button =(Button)view.findViewById(R.id.btn);
button.setText(" "); // set value
将此视图添加到主布局 e.g
LinearLayout myLayout=(LinearLayout)findViewById(R.id.xx);
mylayout.add(view);