2013-03-25 22 views
0

我有一个列表视图,我想传递列表视图的文本来编辑另一个Activity的文本。你可以帮忙吗?当单击一行时,将Listview中的文本设置为另一个Activity的EditText?

public class MainActivity extends Activity { 

    private ListView listView1; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     Weather weather_data[] = new Weather[] 
     { 
      new Weather(R.drawable.weather_cloudy, "Cloudy"), 
      new Weather(R.drawable.weather_showers, "Showers"), 
      new Weather(R.drawable.weather_snow, "Snow"), 
      new Weather(R.drawable.weather_storm, "Storm"), 
      new Weather(R.drawable.weather_sunny, "Sunny") 
     }; 

     WeatherAdapter adapter = new WeatherAdapter(this, 
     R.layout.listview_item_row, weather_data); 


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

     View header = (View)getLayoutInflater().inflate(R.layout.listview_header_row, null); 
     listView1.addHeaderView(header); 

     listView1.setAdapter(adapter); 
} 

当我点击第一行时,下一个活动将显示“多云”,如在edittext中。

回答

1

你可以创建一个列表视图onItemClickListener为你的列表视图,当用户单击列表项/行时,你可以从该行获取文本,你可以将它传递给下一个你要调用的活动,并通过包传递数据和像下面

listView1.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
    @Override 
    public void onItemClick(AdapterView<?> arg0, View arg1, int position, 
       long arg3) { 
     String text= arg0.getItemAtPosition(position) 

     Bundle bundle = new Bundle(); 

     bundle.putString("URTEXT", text); 

     Intent intent = new Intent(MainActivity.this, 
         NextActivity.class); 

     intent.putExtras(bundle); 
     startActivity(intent); 
    } 
}); 

意图在接下来的活动U能够获得这些数据,美通过束通过这样

Intent intent = getIntent(); 
String tEXT = intent.getIntExtra("URTEXT", 0); 
EditText et= (EditText)findViewById(editTextID); 
et.setText(tEXT, TextView.BufferType EDITABLE); 
+0

谢谢..其工作。 – Hema 2013-03-25 13:09:50

相关问题