因此,我希望传递一个名称,该名称插入用户选择的列表视图中。 我想将该名称(即字符串)传递给另一个活动。
我的 Tab1.java (onCreateView)
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View v =inflater.inflate(R.layout.tab1,container,false);
arrItems = getResources().getStringArray(R.array.fruitName);
images = getResources().obtainTypedArray(R.array.fruitImages);
prezzi = getResources().getStringArray(R.array.Price);
listView = (ListView) v.findViewById(R.id.customListView);
listAdapter = new ListAdapter(getContext(),arrItems,images,prezzi);
listView.setAdapter(listAdapter);
listView.setScrollingCacheEnabled(false);
listAdapter.setCustomButtonListener(this);
listView.setOnItemClickListener(
new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// final String selected = (String) parent.getSelectedItem();
Intent i = new Intent(getActivity(), Pop.class);
// i.putExtra("name", selected);
// Toast.makeText(getActivity(), selected, Toast.LENGTH_LONG).show();
startActivity (i);
}
}
);
return v;
}
然后我将通过&#34;名称&#34;进入另一项活动: Pop.java
@Override
protected void onCreate(Bundle savedInsanceState)
{
super.onCreate(savedInsanceState);
setContentView(R.layout.popwindow);
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
ImageView img = (ImageView) findViewById(R.id.imageView1);
TextView txtgrande = (TextView) findViewById(R.id.textView3);
TextView txtpiccolo = (TextView) findViewById(R.id.textView5);
TextView txtprezzo = (TextView) findViewById(R.id.textView12);
int larghezza = dm.widthPixels;
int altezza = dm.heightPixels;
getWindow().setLayout((int) (larghezza * .9), (int) (altezza * .7));
Intent in = getIntent();
String name = in.getStringExtra(("name"));//gets name from intent
/** ---------------- PARTE VERSIONE 2.0 (LISTVIEW DENTRO LE TAB) ------------------------ */
if(name == "Alici fritte marinate")
{
img.setImageResource(R.drawable.alicifritte);
txtgrande.setText("Alici fritte marinate");
txtprezzo.setText("9,50");
txtpiccolo.setMovementMethod(new ScrollingMovementMethod());
txtpiccolo.setText("Presentazione: \n" +
" Le alici fritte marinate sono un antipasto semplice ma allo stesso modo stuzzicante:" +
" \n si preparano aprendo le alici a libro, infarinandole e friggendole per poi lasciarle marinare per " +
"una nottata in un composto di aceto, vino bianco, peperoncino, cipolla e aglio." +
"\n\n Ingedienti:" +
"\n -Acciughe (alici) fresche 400 gr \n -Aceto di vino bianco 300 ml \n -Vino bianco 250 ml \n -Peperoncino piccante fresco \n" +
"-1 Sale q.b. \n -Aglio \n -2 spicchi Cipolle (cipollotto fresco o scalogno) \n -1 Farina q.b. per infarinare le alici");
}
if(name == "Alette di pollo")
{
img.setImageResource(R.drawable.alettedipollo);
txtgrande.setText("Alette di pollo");
txtprezzo.setText("8,50");
txtpiccolo.setMovementMethod(new ScrollingMovementMethod());
txtpiccolo.setText("Le alette di pollo finto fritto al forno sono un antipasto appetitoso da gustare in compagnia! "+
" \n Questa prelibatezza di solito viene gustata fritta, come la ricetta americana vuole, ma " +
"noi vi proponiamo una variante che vede le alette impanate e saltate in padella per poi " +
" essere passate al grill del forno in modo d risultare ugualmente croccanti e irresistibili! \n\nIngredienti:\n "+
"-Pollo ali 9"+
"-Farina integrale 60 g\n" +
"-Paprika 2 g\n" +
"-Pangrattato 20 g\n" +
"-Cognac 50 g\n" +
"-Olio di oliva extravergine 50 g\n" +
"-Sale fino 3 g\n" +
"-Riso venere 150 g\n" +
"-Carote 100 g");
}
我在 string.xml
中为listview创建了数组<resources>
<string name="app_name">Ristorante</string>
<!--Antipasti-->
<string-array name="fruitName">
<item>Alici fritte marinate</item>
<item>Alette di pollo</item>
<item>Alici marinate</item>
</string-array>
<string-array name="fruitImages">
<item>@mipmap/alicifritte</item>
<item>@mipmap/alettedipollo</item>
<item>@mipmap/alicimarinate</item>
</string-array>
<string-array name="Price">
<item>9,50 $</item>
<item>8,50 $</item>
<item>9,00 $</item>
</string-array>
<!--Primi piatti-->
<string-array name="PrimiName">
<item>Spaghetti allo scoglio</item>
<item>Penne al fumè</item>
<item>Agnolotti</item>
</string-array>
<string-array name="PrimiImages">
<item>@mipmap/spaghettiscoglio</item>
<item>@mipmap/pennefume</item>
<item>@mipmap/agnolotti</item>
</string-array>
<string-array name="PrimiPrice">
<item>9,00 $</item>
<item>9,50 $</item>
<item>10,50 $</item>
</string-array>
<!--Secondi piatti-->
<string-array name="SecondiName">
<item>Agnello cacio e ova</item>
<item>Agnello a scottadito</item>
<item>Anatra alla arancia</item>
</string-array>
<string-array name="SecondiImages">
<item>@mipmap/agnellocacioeova</item>
<item>@mipmap/abbacchioascottadito</item>
<item>@mipmap/anatraarancia</item>
</string-array>
<string-array name="SecondiPrice">
<item>8,50 $</item>
<item>9,50 $</item>
<item>10,00 $</item>
</string-array>
<!--Contorni-->
<string-array name="ContorniName">
<item>Asparagi Giallo Zabaione</item>
<item>Barba di frate</item>
<item>Barbabietole agrodolci</item>
</string-array>
<string-array name="ContorniImages">
<item>@mipmap/asparagiallozabaione</item>
<item>@mipmap/barbadifrate</item>
<item>@mipmap/barbabietoleagrodolci</item>
</string-array>
<string-array name="ContorniPrice">
<item>4,00 $</item>
<item>4,50 $</item>
<item>3,50 $</item>
</string-array>
<!--Dolci-->
<string-array name="DolciName">
<item>Bellini cocktail</item>
<item>Caffè shakerato</item>
<item>Cosmopolitan</item>
</string-array>
<string-array name="DolciImages">
<item>@mipmap/bellinicocktail</item>
<item>@mipmap/caffeshakerato</item>
<item>@mipmap/cosmopolitan</item>
</string-array>
<string-array name="DolciPrice">
<item>2,50 $</item>
<item>3,00 $</item>
<item>3,00 $</item>
</string-array>
<!--Bevande-->
<string-array name="BevandeName">
<item>Alfajores</item>
<item>Alberi di natale</item>
<item>Amaretti</item>
</string-array>
<string-array name="BevandeImages">
<item>@mipmap/alfajores</item>
<item>@mipmap/alberinatale</item>
<item>@mipmap/amaretti</item>
</string-array>
<string-array name="BevandePrice">
<item>4,50 $</item>
<item>5,00 $</item>
<item>2,50 $</item>
</string-array>
!!连续有两个按钮(+和 - ),也许他们不让我选择行。
问题是,如果我选择一行,它就不会出现我放在我的Tab1.java(Toast)上的消息
答案 0 :(得分:0)
listView.setOnItemClickListener(
new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// final String selected = (String) parent.getSelectedItem();
Intent i = new Intent(getActivity(), Pop.class);
//this would put your name into a intent extra
i.putextra("name", arritems.get(position);
// i.putExtra("name", selected);
// Toast.makeText(getActivity(), selected, Toast.LENGTH_LONG).show();
startActivity (i);
}
}
获得额外的
String fruitName = i.getStringExtra("name");