2016-11-08 4 views
0

私はthisのチュートリアルに基づいてボタンの私のgridviewをアンドロイドデベロッパーのページに基づいています。私はインテントとアンドロイドの開発という考え方にはまったく新しいものです。 私は約16 "フラッシュカード"の "詳細ビュー"を設定するために使用する変数がいっぱいのJavaファイルがありますが、Javaクラスを取得するためにボタンIDをインテントとして使用する方法がわかりませんこのアンドロイドチュートリアルでは、ボタンインテントをどのように渡すのですか?

例えば、最初のボタンのidはbtn_c1、それは

final String[] c1Data = { 
     "Left", "Right", "+", "Left", "A", "PS", "+", "Flatter", "AI", "Inferior", "Anterior", 
     "Contralateral", "Typical", "Typical", "Typical", "C1", "No" 
}; 

として読み込むためのデータ(それは私の友人/クライアントがそれに望んだ、それぞれが何であるかを私に聞かないでください)

これですラベルを持つリストビューと各行のこの情報に移入することになっています。データをどのようにして渡すかについてはどこから始めるべきかはわかりません。

グリッドビューのアダプタはチュートリアルの機能とほぼ同じですが、ボタンのIDは異なります。

これは私が意図を渡したい領域です。今それだけで、一般的なテスト活動を開き、それはあなたが見ることができるように、ボタンの複数の種類があります、それは何も

を変更した場合、各1分のデータが、他と異なる

final ImageAdapter CardsAdapter = new ImageAdapter(getActivity()); 

    final GridView gridview = (GridView) rootView.findViewById(R.id.gridview); 
    gridview.setAdapter(CardsAdapter); 

    gridview.setOnItemClickListener(new AdapterView.OnItemClickListener(){ 
     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id){ 

      Intent intent = new Intent(getActivity(), DetailActivity.class); 
      startActivity(intent); 

     } 
    }); 

正常に動作しますこれは次のような方法で、アダプタ ImageAdapter

を助けることができるscreenshot

答えて

1

希望。

// create a new ImageView for each item referenced by the Adapter 
public View getView(int position, View convertView, ViewGroup parent) { 
    ImageView imageView; 
    if (convertView == null) { 
     // if it's not recycled, initialize some attributes 
     imageView = new ImageView(mContext); 
     imageView.setLayoutParams(new GridView.LayoutParams(85, 85)); 
     imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); 
     imageView.setPadding(8, 8, 8, 8); 

     //In here a intent to your retail activity 
     imageView.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Intent intent = new Intent(getActivity(), DetailActivity.class); 
      i.putExtra("button", c1Data [position]); 

     startActivity(intent); 
     } 
     } 
    } else { 
     imageView = (ImageView) convertView; 
    } 

    imageView.setImageResource(mThumbIds[position]); 
    return imageView; 
} 

そしてDetailActivity

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    String name = intent.getStringExtra("button"); 
} 
+0

でだから、私は私が持っている16個のボタンのそれぞれに対してこれを行う必要がありますか?または、それがどのボタンを抽出し、それを使って "c1" "c2"などを引き出す方法がありますか? – Mike

+0

getViewメソッドには位置があります。これは、getItemCountメソッドで定義されたn回の変換を意味します。 –

+0

ああ、私はyaを得る。だから私はそれが別のCを使用する必要があります<#> Data [] []各位置。 – Mike

関連する問題