2013-05-03 108 views
0

我已经做了一个简单的演示,在android中的spinners,在那2个活动在第一个活动有一个简单的微调和第二个textView.So当任何项目从微调选择它将被显示关于第二个活动,我曾尝试下面的代码,但它不工作:微调不工作在android,

Activity1.java

package com.example.sppiner; 

import android.os.Bundle; 
import android.app.Activity; 
import android.content.Intent; 
import android.view.Menu; 
import android.view.View; 
import android.widget.AdapterView; 
import android.widget.AdapterView.OnItemClickListener; 
import android.widget.ArrayAdapter; 
import android.widget.SimpleAdapter; 
import android.widget.Spinner; 

public class MainActivity extends Activity { 
Spinner sp; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     sp=(Spinner)findViewById(R.id.spinner1); 
     String[] s={"ahmedabad","baroda","chitor","daman","england","france","georgia"}; 

     sp.setAdapter(new ArrayAdapter(this, android.R.layout.simple_spinner_dropdown_item,s)); 
     sp.setOnItemClickListener(new OnItemClickListener() { 

      @Override 
      public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, 
        long arg3) { 
       // TODO Auto-generated method stub 
       String n = (String)arg0.getItemAtPosition(arg2); 
       Intent i =new Intent(MainActivity.this,Act2.class); 
      Bundle b =new Bundle(); 
      i.putExtra("nat", n); 
       startActivity(i); 
      } 

     }); 
    } 
} 

act2.java

package com.example.sppiner; 

import android.os.Bundle; 
import android.app.Activity; 
import android.content.Intent; 
import android.view.Menu; 
import android.widget.TextView; 

public class Act2 extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_act2); 
     TextView tv =(TextView)findViewById(R.id.tv1); 

     Bundle b = getIntent().getExtras(); 
     Intent i =getIntent(); 
     String nat = b.getString("nat"); 
     tv.setText(nat); 




    } 



} 

请帮助我...在此先感谢

+1

我ahve删除它......还是没有解决...... – jigar 2013-05-03 04:10:22

回答

1

在你IST活动,这样做:

sp.setOnItemClickListener(new OnItemClickListener() { 

     @Override 
     public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, 
       long arg3) { 
      // TODO Auto-generated method stub 
      String n = (String)arg0.getItemAtPosition(arg2); 
      Intent i =new Intent(MainActivity.this,Act2.class); 
      i.putExtra("nat", n); 
      startActivity(i); 
     } 

    }); 

而且,在你的第二个活动,这样做:

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_act2); 
    TextView tv =(TextView)findViewById(R.id.tv1); 
    String nat = getIntent().getStringExtra("nat"); 
    tv.setText(nat); 

} 
+1

其工作...!感谢你的兄弟.... 1have ma纽约天..! – jigar 2013-05-03 04:26:18

0

你可以试试这个。

您需要在先前的activity中获得给定key的值。即nat

protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_activity2); 
      tv=(TextView)findViewById(R.id.textView1); 
      Intent i =getIntent(); 
      Bundle b =i.getExtras(); 
      String city =b.getStringExtras("nat"); 
      tv.setText(city); 
     } 
+0

,改变这一行意向书I =新意图(MainActivity 。这,Act2.class);成Intent i = new Intent(MainActivity.this,Activity2.class); – vinoth 2013-05-03 04:04:09

+0

我已编辑我的代码..still有问题..请重新检查它..亲爱的 – jigar 2013-05-03 04:08:41

+1

@vinoth没有vinoth。它只是'Act2.class'。看他的班名和文件名。 – Gunaseelan 2013-05-03 04:13:37

3

尝试使用setOnItemSelectedListenerspinner

cat.setOnItemSelectedListener(new OnItemSelectedListener() { 

public void onItemSelected(AdapterView<?> arg0, View arg1,int arg2, long arg3) { 
String n = (String)arg0.getItemAtPosition(arg2); 
Intent i =new Intent(MainActivity.this,Act2.class); 
Bundle b =new Bundle(); 
i.putExtra("nat", n); 
startActivity(i); 
} 

public void onNothingSelected(AdapterView<?> arg0) { 

} 
}); 

并在第二活动

String city =b.getString("nat"); 

使用这条线,而不是

String city =b.getString("city"); 
+0

其工作......谢谢兄弟.. :))///////有一个fyn的一天..!:) – jigar 2013-05-03 04:26:53

+0

@jigar欢迎您的朋友 – Gunaseelan 2013-05-03 04:28:41

+0

我的荣幸...兄弟.. :) – jigar 2013-05-03 04:30:34