0
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
<EditText 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/speed"
    android:inputType="number"></EditText>"
<TextView 
    android:id="@+id/TextViewSpeed"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text ="Speed"
    android:layout_below="@+id/speed"
    />
<Button 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom"
    android:text="AddValue"
    android:id="@+id/AddValue"
    >
</Button>
<ListView 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:id="@+id/ListView"
    android:layout_below="@+id/AddValue"
    >
</ListView>

</RelativeLayout>

这是我的布局代码。我想将 EditText 中的文本数据添加到同一页面上的 ListView 中。当我单击 AddValue 按钮时,如何编写代码以将文本添加到列表中。提前致谢。

4

2 回答 2

2

使用此代码

 addbutton.setOnClickListener(new View.OnClickListener() {
      public void onClick(View v) {     
         String val = edittext.getText().toString();
         list.add(val);
         ((ArrayAdapter<Object>) listView.getAdapter()).notifyDataSetChanged();
     }
});
于 2012-06-07T07:23:28.877 回答
1

下面的片段会帮助你。

package org.sample;

    import android.app.ListActivity;
    import android.os.Bundle;
    import android.view.ContextMenu;
    import android.view.ContextMenu.ContextMenuInfo;
    import android.view.MenuInflater;
    import android.view.MenuItem;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.ArrayAdapter;
    import android.widget.Button;
    import android.widget.EditText;

    public class SampleActivity extends Activity
    {
        private Button add;
        private EditText speedText;
        private ArrayAdapter<String> adapter;
        private ListView AddValue;
        @Override
        public void onCreate(Bundle savedInstanceState)
        {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);  

            ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
                    android.R.layout.simple_list_item_1);

                    AddValue=(ListView)findViewById(R.id.AddValue); 
            AddValue.setAdapter(adapter);

            add = (Button) findViewById(R.id.add);
            speedText = (EditText) findViewById(R.id.speed);
            add.setOnClickListener(new OnClickListener()
            {

                @Override
                public void onClick(View arg0)
                {
                    if (speedText.getText().toString().length() != 0)
                    {
                        adapter.add(speedText.getText().toString());
                        adapter.notifyDataSetChanged();
                    }

                }
            });
        }
    }
于 2012-06-07T07:26:15.810 回答