2012-03-19 9 views
3

私はAndroid開発の初心者で、Spinnerを実装したいと思います。私の問題は、キーカテゴリの9つの値を持つ配列があることです。私の配列は次のようになります:スピナーを使用してandroidの配列から入力する方法

MyArray 
[{Category=Things To Do}, 
{Category=Transportation}, 
{Category=Food and Drink}, 
{Category=Accommodation}, 
{Category=Shopping}, 
{Category=Money and Costs}, 
{Category=Business}, 
{Category=Turkey Tour}, 
{Category=Events}] 

カテゴリキーの値を取得したいです。私はスピードナーのためのMyArrayが必要です。

MyArray 
    { 
    Things To Do 
    Transportation 
    Food and Drink 
    Accommodation 
    Shopping 
    ......  
    } 

これはiPhoneコードに似ています。

// iPhone code 
for(int i=0; i<[arrayCategory count]; i++) 
    { 
    NSString *strSubTitle=[[arrayCategory objectAtIndex:i]objectForKey:@"category"]; 
    } 

私を助けてください。

ありがとう

+0

感謝を取得するために、スピナーに特定の値を選択する

4.on。私はwizardistanbul.net/wizardistanbul/mobilewebservices/...を解析しなければならず、スピナーにカテゴリIDとカテゴリ名を表示する必要があります。 – Deepak

+0

MyArrayという [{カテゴリー=観光}、 {カテゴリー=運輸}、 {カテゴリー=飲食}、 {カテゴリー=宿泊}、 {カテゴリー=ショッピング}、 {カテゴリー=マネーとコスト} 、 {カテゴリ=ビジネス}、 {カテゴリ=トルコツアー}、 {カテゴリ=イベント}] – Deepak

答えて

10

最初私が正しくあなたの質問を理解していれば

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

    Spinner spinner = (Spinner) findViewById(R.id.spinner); 
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
     this, R.array.planets_array, android.R.layout.simple_spinner_item); 
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    spinner.setAdapter(adapter); 
    } 
+0

お返事ありがとうございます。私はhttp://wizardistanbul.net/wizardistanbul/mobilewebservices/iphonerequest_instanbul.php?request=Categoryを構文解析し、スピナーにカテゴリIDとカテゴリ名を表示する必要があります。 – Deepak

+0

MyArrayは解析後MyArray [{カテゴリ=物事}、{カテゴリ=運送}、{カテゴリ=食事&ドリンク}、{カテゴリ=宿泊施設}、{カテゴリ=ショッピング}、{カテゴリ=お金とコスト}、{カテゴリ=ビジネス}、{カテゴリ=イベント}} – Deepak

4

このようにするとうまくいきます。

public class ArrayAdapterDemo2 extends Activity implements 
     AdapterView.OnItemSelectedListener { 
    TextView selection; 
    String[] category= { "football","cricket" ,"baseball"}; 

    @Override 
    public void onCreate(Bundle icicle) { 
     super.onCreate(icicle); 
     setContentView(R.layout.main); 
     selection = (TextView) findViewById(R.id.selection); 

     Spinner spin = (Spinner) findViewById(R.id.spinner); 
     spin.setOnItemSelectedListener(this); 

     ArrayAdapter aa = new ArrayAdapter(this,android.R.layout.simple_spinner_item, category); 

     aa.setDropDownViewResource(
      android.R.layout.simple_spinner_dropdown_item); 
     spin.setAdapter(aa); 
    } 

    public void onItemSelected(AdapterView<?> parent, View v, int position, 
      long id) { 
     selection.setText(items[position]); 
    } 

    public void onNothingSelected(AdapterView<?> parent) { 
     selection.setText(""); 
    } 
} 
+0

返信ありがとうございます。私はwizardistanbul.net/wizardistanbul/mobilewebservices/...を解析しなければならず、スピナーにカテゴリIDとカテゴリ名を表示する必要があります。 – Deepak

+0

データを解析してアダプタに格納し、そのアダプタを使用してデータをスピナーに送ります。 – Hasmukh

0

以下のようにコード内で文字列の配列については、上記のXMLを使用し、あなたの文字列配列の文字列に

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <string name="planet_prompt">Choose a planet</string> 
    <string-array name="planets_array"> 
    <item>Mercury</item> 
    <item>Venus</item> 
    <item>Earth</item> 
    <item>Mars</item> 
    <item>Jupiter</item> 
    <item>Saturn</item> 
    <item>Uranus</item> 
    <item>Neptune</item> 
    </string-array> 
</resources> 

をXMLを作成しますこれはゾルになります 1.スピナースピナースピナーを作成します。

2.CreateデータString[] category={"Cricket","football".....};

3.spinner.setAdapter(新しいArrayadapter(これ、android.R.layout.simple_spinner_item、カテゴリ));値に返信用

spinner.setOnItemSelected(new onItemselected(public void onItemSelected(AdapterView<?> parent, 
      View view, int pos, long id) { 
// to get selected Value 
Toast.makeText(getApplicationContext(),"selected:"+category[pos],5000).show(); 
}); 
+0

Data String [] category = {"Cricket"、 "football" .....}で値を入力する方法はありますか?静的なポイントを伝えています。パース配列からこの文字列を動的に作成し、開発者はMyArrayという名前のパース配列を持ちます。 –

+0

これは動的配列使用の場合1.ArrayList 2. ArrayListの動的長さを作成する3. ArrayListのadd(index、value)を使用してコンテンツを設定し、最終的にspinner – Manju

+0

のsetAdapter()のカテゴリ配列の代わりにarraylistを使用します。解析した後MyArrayというのMyArrayという [{カテゴリー=観光}、 {カテゴリー=運輸}、 {カテゴリー=飲食}、 {カテゴリー=宿泊}、 {カテゴリー=ショッピング}、 {カテゴリー=マネーです{カテゴリ=ビジネス}、 {カテゴリ=トルコツアー}、 {カテゴリ=イベント}] – Deepak

0
import android.widget.SimpleCursorAdapter; 
import android.widget.Spinner; 

public class AndroidSQLite extends Activity implements OnItemSelectedListener { 
Spinner spinnergame; 
String[] games = { "football","cricket" ,"baseball"}; 

@Override 
public void onCreate(Bundle icicle) { 
    super.onCreate(icicle); 
setContentView(R.layout.creategame); 

spinnergame = (Spinner) findViewById(R.id.game); 
spinnergame.setOnItemSelectedListener(this); 
ArrayAdapter<String> aa = new ArrayAdapter<String>(this, 
      android.R.layout.simple_spinner_item, games); 

    aa.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    spinnercity.setAdapter(aa); 
public String getSpinnerSelection() { 
    return this.selectedspinnervalue; 
} 

public void setSpinnerSelection(String selection) { 
    this.selectedspinnervalue = selection; 
} 
public void onItemSelected(AdapterView<?> parent, View view, int position, 
     long id) { 



} 


public void onNothingSelected(AdapterView<?> arg0) { 
    // TODO Auto-generated method stub 
    selection.setText(""); 

    } 
} 
+0

こんにちは、問題の開発者が直面していると思うのは、=記号付きのカテゴリタグを削除することです。あなたがアイデアを持っているなら、質問者が尋ねた形式ではなく配列要素だけを動的に見つける方法を教えてください。 –

関連する問題