解决方案 »

  1.   

    用startActivityForResult()跳转获取值就行了啊
      

  2.   

    不太明白楼主的意思,你要是第一次会修改了,那就修改数据源后,adapter.notifyDataSetChanged() 每次都是这样
      

  3.   

    我现在是在同一个Activity内,只是弹出一个对话框,要怎么写代码呢?
      

  4.   

    源代码帮你写好了 你自己看看
    package app.example.test0926;import android.os.Bundle;
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.graphics.Color;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.AdapterView;
    import android.widget.AdapterView.OnItemLongClickListener;
    import android.widget.ArrayAdapter;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.ListView;
    import android.widget.TextView;public class MainActivity extends Activity {
    private ListView lvShow;
    private AlertDialog dialog; @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    lvShow = (ListView) findViewById(R.id.lvShow);
    String[] arr = { "李四", "小猪", "店小二" };
    ArrayAdapter<String> Adap1 = new ArrayAdapter<String>(this,
    R.layout.test_list, arr);
    lvShow.setAdapter(Adap1);// 设置ListView的显示
    lvShow.setOnItemLongClickListener(new OnItemLongClickListener() { @Override
    public boolean onItemLongClick(AdapterView<?> parent, View view,
    int position, long id) {
    setAlertDialog(view);
    dialog.show();
    return false;
    }
    });
    } private void setAlertDialog(final View view) {
    LayoutInflater factory = LayoutInflater.from(getApplicationContext());
    // 引入一个外部布局
    View contview = factory.inflate(R.layout.test_dialog, null);
    contview.setBackgroundColor(Color.BLACK);// 设置该外部布局的背景
    final EditText edit = (EditText) contview
    .findViewById(R.id.edit_dialog);// 找到该外部布局对应的EditText控件
    Button btOK = (Button) contview.findViewById(R.id.btOK_dialog);
    btOK.setOnClickListener(new OnClickListener() {// 设置按钮的点击事件 @Override
    public void onClick(View v) {
    ((TextView) view).setText(edit.getText().toString());
    dialog.dismiss();
    }
    });
    dialog = new AlertDialog.Builder(MainActivity.this).setView(contview)
    .create();
    }
    }
      

  5.   

    以下是对应的三个布局文件
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context=".MainActivity" >    <ListView
            android:id="@+id/lvShow"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" /></RelativeLayout>
      

  6.   

    <?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:gravity="center_horizontal"
        android:orientation="vertical" >    <EditText
            android:id="@+id/edit_dialog"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:textSize="28sp" />    <Button
            android:id="@+id/btOK_dialog"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="确定" /></LinearLayout>