我已经以编程方式创建了表单,因为我依赖于数据库中存在的值。
mydb = new DatabaseAdapter(this);
Cursor cursor = mydb.getAllJuice();
calculate = (Button) findViewById(R.id.button1);
li = new ArrayList<String>();
while (cursor.moveToNext()) {
int cid = cursor.getInt(0);
String id = Integer.toString(cid);
String name = cursor.getString(1);
String price = cursor.getString(2);
//li.add(price);
names.add(name); //this adds an element to the list.
desc.add(price); //this adds an element to the list.
qty.add("");
}
JuiceAdapter customList = new JuiceAdapter(this, names, desc, qty);
listView = (ListView) findViewById(R.id.listView1);
listView.setAdapter(customList);
在我的内容中,我根据DB(项目的名称和价格)和EditText(取决于用户将插入的值)的值来填充2个TextView。
在我的main.xml中,我调用了listView:
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/button1"
android:layout_alignParentLeft="true"
android:layout_marginTop="30dp" >
</ListView>
使用list.xml,如下所示:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_height="fill_parent"
android:layout_width="fill_parent" >
<TextView
android:id="@+id/label1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@+id/label1"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginTop="8dp"
android:clickable="false"
android:textSize="30dp" />
<TextView
android:id="@+id/price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginTop="8dp"
android:text="@+id/price"
android:clickable="false"
android:textSize="30dp" />
<EditText
android:id="@+id/qty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginTop="8dp"
android:inputType="number"
android:textSize="30dp"
android:ems="7"
android:clickable="true"/>
</LinearLayout>
首先点击EditText并不容易打开键盘。一旦键盘打开,我在EditText中插入一个值,然后当我最小化键盘时,值就会丢失。
任何想法,请问为什么我会失去价值观以及如何让点击更轻松?
在虚拟设备上进行测试