Android 如何在编辑框中选择消息显示并在应用程序中创建txt文件

Android 如何在编辑框中选择消息显示并在应用程序中创建txt文件,android,Android,我已经创建了一个列表、messagebox和主活动java文件。 当用户点击收件箱按钮时,显示您手机的所有收件箱消息。 当您在编辑框中选择自动显示在my mainactivity.java上的收件箱消息,并单击“保存”按钮时,将在我的应用程序中创建text.txt文件 我转发所有xml文件,重要的是如何选择msg自动显示在编辑框上,以及在应用程序中单击save create.txt文件时。 当你们点击“保存”按钮时,编辑框消息“创建txt文件”,txt文件数据与编辑框消息相同 MessageBo

我已经创建了一个列表、messagebox和主活动java文件。 当用户点击收件箱按钮时,显示您手机的所有收件箱消息。 当您在编辑框中选择自动显示在my mainactivity.java上的收件箱消息,并单击“保存”按钮时,将在我的应用程序中创建text.txt文件

我转发所有xml文件,重要的是如何选择msg自动显示在编辑框上,以及在应用程序中单击save create.txt文件时。 当你们点击“保存”按钮时,编辑框消息“创建txt文件”,txt文件数据与编辑框消息相同

MessageBox.java 包com.example.SharedReference

    /***
     *    Application Name : MessageBox 
     *    Author : Vimal Rughani
     *    Website : http://pulse7.net
     *    For more details visit http://pulse7.net/android/read-sms-message-inbox-sent-draft-android/
     */
    import android.app.Activity;
    import android.content.ContentResolver;
    import android.database.Cursor;
    import android.net.Uri;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.ListView;
    import android.widget.SimpleCursorAdapter;
    import android.widget.TextView;

    public class MessageBox extends Activity implements OnClickListener {

        // GUI Widget
        Button btnSent, btnInbox, btnDraft;
        TextView lblMsg, lblNo;
        ListView lvMsg;

        // Cursor Adapter
        SimpleCursorAdapter adapter;

        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.messagebox);

            // Init GUI Widget
            btnInbox = (Button) findViewById(R.id.btnInbox);
            btnInbox.setOnClickListener(this);



            lvMsg = (ListView) findViewById(R.id.lvMsg);

        }

        @Override
        public void onClick(View v) {

            if (v == btnInbox) {

                // Create Inbox box URI
                Uri inboxURI = Uri.parse("content://sms/inbox");

                // List required columns
                String[] reqCols = new String[] { "_id", "address", "body" };

                // Get Content Resolver object, which will deal with Content
                // Provider
                ContentResolver cr = getContentResolver();

                // Fetch Inbox SMS Message from Built-in Content Provider
                Cursor c = cr.query(inboxURI, reqCols, null, null, null);

                // Attached Cursor with adapter and display in listview
                adapter = new SimpleCursorAdapter(this, R.layout.row, c,
                        new String[] { "body", "address" }, new int[] {
                                R.id.lblMsg, R.id.lblNumber });
                lvMsg.setAdapter(adapter);

            }

            /*if (v == btnSent) {

                // Create Sent box URI
                Uri sentURI = Uri.parse("content://sms/sent");

                // List required columns
                String[] reqCols = new String[] { "_id", "address", "body" };

                // Get Content Resolver object, which will deal with Content
                // Provider
                ContentResolver cr = getContentResolver();

                // Fetch Sent SMS Message from Built-in Content Provider
                Cursor c = cr.query(sentURI, reqCols, null, null, null);

                // Attached Cursor with adapter and display in listview
                adapter = new SimpleCursorAdapter(this, R.layout.row, c,
                        new String[] { "body", "address" }, new int[] {
                                R.id.lblMsg, R.id.lblNumber });
                lvMsg.setAdapter(adapter);

            }

            if (v == btnDraft) {
                // Create Draft box URI
                Uri draftURI = Uri.parse("content://sms/draft");

                // List required columns
                String[] reqCols = new String[] { "_id", "address", "body" };

                // Get Content Resolver object, which will deal with Content
                // Provider
                ContentResolver cr = getContentResolver();

                // Fetch Sent SMS Message from Built-in Content Provider
                Cursor c = cr.query(draftURI, reqCols, null, null, null);

                // Attached Cursor with adapter and display in listview
                adapter = new SimpleCursorAdapter(this, R.layout.row, c,
                        new String[] { "body", "address" }, new int[] {
                                R.id.lblMsg, R.id.lblNumber });
                lvMsg.setAdapter(adapter);

            }*/


        }
    }
    import android.app.Activity;
    import android.app.ListActivity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.ArrayAdapter;
    import android.widget.ListView;
    import android.widget.TextView;

    public class list extends ListActivity implements OnClickListener{

         TextView txt;
         String result;

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.row);
             String[] items = null;
            setListAdapter(new ArrayAdapter<String>(this,
                        android.R.layout.simple_list_item_1, items));
            txt = (TextView) findViewById(R.id.lblMsg);

             txt.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View arg0) {
                        // TODO Auto-generated method stub
        /*
                        result = txt.getText().toString();
                        Intent i = new Intent();
                        i.putExtra("MessageFromsecondActivity", result);
                        setResult(1, i);

                        finish();
        */
                    }
                });
    }

        @Override
        protected void onListItemClick(ListView l, View v, int position, long id) {
            super.onListItemClick(l, v, position, id);
            // TODO Auto-generated method stub        
            String val = ((TextView) v).getText().toString().trim();
            CharSequence[] items = null;
            txt.setText(items[position]);          
            Intent i = new Intent(list.this, MessageBox.class);
            i.putExtra("value", val);
            //Intent in = null;
            startActivity(i);  
        }
       /* @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            // Inflate the menu; this adds items to the action bar if it is present.
            getMenuInflater().inflate(R.menu.list, menu);
            return true;
        }*/

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub

        }   
    }
list.java 包com.example.SharedReference

    /***
     *    Application Name : MessageBox 
     *    Author : Vimal Rughani
     *    Website : http://pulse7.net
     *    For more details visit http://pulse7.net/android/read-sms-message-inbox-sent-draft-android/
     */
    import android.app.Activity;
    import android.content.ContentResolver;
    import android.database.Cursor;
    import android.net.Uri;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.ListView;
    import android.widget.SimpleCursorAdapter;
    import android.widget.TextView;

    public class MessageBox extends Activity implements OnClickListener {

        // GUI Widget
        Button btnSent, btnInbox, btnDraft;
        TextView lblMsg, lblNo;
        ListView lvMsg;

        // Cursor Adapter
        SimpleCursorAdapter adapter;

        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.messagebox);

            // Init GUI Widget
            btnInbox = (Button) findViewById(R.id.btnInbox);
            btnInbox.setOnClickListener(this);



            lvMsg = (ListView) findViewById(R.id.lvMsg);

        }

        @Override
        public void onClick(View v) {

            if (v == btnInbox) {

                // Create Inbox box URI
                Uri inboxURI = Uri.parse("content://sms/inbox");

                // List required columns
                String[] reqCols = new String[] { "_id", "address", "body" };

                // Get Content Resolver object, which will deal with Content
                // Provider
                ContentResolver cr = getContentResolver();

                // Fetch Inbox SMS Message from Built-in Content Provider
                Cursor c = cr.query(inboxURI, reqCols, null, null, null);

                // Attached Cursor with adapter and display in listview
                adapter = new SimpleCursorAdapter(this, R.layout.row, c,
                        new String[] { "body", "address" }, new int[] {
                                R.id.lblMsg, R.id.lblNumber });
                lvMsg.setAdapter(adapter);

            }

            /*if (v == btnSent) {

                // Create Sent box URI
                Uri sentURI = Uri.parse("content://sms/sent");

                // List required columns
                String[] reqCols = new String[] { "_id", "address", "body" };

                // Get Content Resolver object, which will deal with Content
                // Provider
                ContentResolver cr = getContentResolver();

                // Fetch Sent SMS Message from Built-in Content Provider
                Cursor c = cr.query(sentURI, reqCols, null, null, null);

                // Attached Cursor with adapter and display in listview
                adapter = new SimpleCursorAdapter(this, R.layout.row, c,
                        new String[] { "body", "address" }, new int[] {
                                R.id.lblMsg, R.id.lblNumber });
                lvMsg.setAdapter(adapter);

            }

            if (v == btnDraft) {
                // Create Draft box URI
                Uri draftURI = Uri.parse("content://sms/draft");

                // List required columns
                String[] reqCols = new String[] { "_id", "address", "body" };

                // Get Content Resolver object, which will deal with Content
                // Provider
                ContentResolver cr = getContentResolver();

                // Fetch Sent SMS Message from Built-in Content Provider
                Cursor c = cr.query(draftURI, reqCols, null, null, null);

                // Attached Cursor with adapter and display in listview
                adapter = new SimpleCursorAdapter(this, R.layout.row, c,
                        new String[] { "body", "address" }, new int[] {
                                R.id.lblMsg, R.id.lblNumber });
                lvMsg.setAdapter(adapter);

            }*/


        }
    }
    import android.app.Activity;
    import android.app.ListActivity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.ArrayAdapter;
    import android.widget.ListView;
    import android.widget.TextView;

    public class list extends ListActivity implements OnClickListener{

         TextView txt;
         String result;

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.row);
             String[] items = null;
            setListAdapter(new ArrayAdapter<String>(this,
                        android.R.layout.simple_list_item_1, items));
            txt = (TextView) findViewById(R.id.lblMsg);

             txt.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View arg0) {
                        // TODO Auto-generated method stub
        /*
                        result = txt.getText().toString();
                        Intent i = new Intent();
                        i.putExtra("MessageFromsecondActivity", result);
                        setResult(1, i);

                        finish();
        */
                    }
                });
    }

        @Override
        protected void onListItemClick(ListView l, View v, int position, long id) {
            super.onListItemClick(l, v, position, id);
            // TODO Auto-generated method stub        
            String val = ((TextView) v).getText().toString().trim();
            CharSequence[] items = null;
            txt.setText(items[position]);          
            Intent i = new Intent(list.this, MessageBox.class);
            i.putExtra("value", val);
            //Intent in = null;
            startActivity(i);  
        }
       /* @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            // Inflate the menu; this adds items to the action bar if it is present.
            getMenuInflater().inflate(R.menu.list, menu);
            return true;
        }*/

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub

        }   
    }
所有xml文件 这是我的活动xml文件。在编辑框上显示的“从收件箱中选择消息”和“创建保存”按钮时,在我的应用程序中生成txt文件


要写入EditText中存在的文件的代码 只需在保存按钮的onclick事件中调用下面的方法

private void writeToFile(String data) {
    try {
        OutputStreamWriter outputStreamWriter = new OutputStreamWriter(openFileOutput("config.txt", Context.MODE_PRIVATE));
        outputStreamWriter.write(data);
        outputStreamWriter.close();
    }
    catch (IOException e) {
        Log.e("Exception", "File write failed: " + e.toString());
    } 
}

你面临什么问题??Post log cat if ANY当我选择在我的编辑框上不显示的收件箱消息时,请给出代码,当我单击“保存”按钮时,如何从编辑框中创建txt文件当我选择在我的编辑框上显示的收件箱消息时,我单击“保存”按钮并创建txt文件,但问题是选中了收件箱消息不显示在主活动的编辑框中。从列表视图初始化。请核对清单。java@Override受保护的void onListItemClickListView l,View v,int position,long id{super.onListItemClickl,v,position,id;//TODO自动生成的方法存根字符串val=TextView v.getText.toString.trim;CharSequence[]items=null;txt.setTextitems[position];Intent i=new Intentlist.this,MessageBox.class;i.putExtravalue,val;//Intent in=null;startActivityi;}在MessageBox.java中,您不能通过Intent获得任何值。所以,无论您试图通过活动传递什么值,都不会传递到MessageBox.java