我正在尝试获取一个添加按钮,根据按钮左侧的edittext添加另一个按钮到布局.关键是一个人列出他们家中的房间,然后当他们在每个房间输入时,会生成一个新按钮,这样他们就可以点击房间,然后开始处理下一页.
我有一个XML布局全部完成,然后我意识到我"编程"添加按钮,所以我编程重做布局,然后在开关/箱(这就是我该怎么办onclicks)的添加按钮,我试图添加视图的按钮,但它变得非常棘手.我想在edittext下面有一个滚动视图并添加按钮,当他们将所有房间添加到他们的房子时,它最终会填充整个家庭的可滚动按钮列表.有没有办法以编程方式将按钮添加到xml'd布局.我以为你可以,但我正在尝试的一切都没有用.
感谢大家的帮助,非常感谢您的任何建议.
First Edit(响应Tanuj的解决方案)
我的XML文件(不确定我们是否会使用它或只是使用java):
<?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="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/tvAddARoom"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/tvAddARoom" />
<EditText
android:id="@+id/etAddARoom"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/etAddARoom" />
<Button
android:id="@+id/btnAddARoom"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/btnAdd" />
<TextView
android:id="@+id/tvSelectARoom"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/tvSelectARoom" />
<TextView
android:id="@+id/tvNoRooms"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/tvNoRooms" />
<Button
android:id="@+id/btnViewAll"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/btnViewAll" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
和Java.这一点都不正确,因为在java中我创建整个布局而不是使用上面的布局.只是不确定我是否可以弥合这两者.
package com.bluej.movingbuddy;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup.LayoutParams;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
//import android.widget.ScrollView;
import android.widget.TextView;
public class EstimatorByRoom extends Activity …
Run Code Online (Sandbox Code Playgroud)