【发布时间】:2018-12-05 21:41:22
【问题描述】:
所以,我一直在尝试开发一个应用程序,您可以在其中自己订购三明治。到目前为止,我已经使用列表视图管理了所有内容,您可以订购什么类型的三明治等等。
但我不确定下一步,即当有人单击某个项目时,必须以某种方式保存该项目。我对 Arraylist 的猜测?
这就是我需要帮助的地方,以某种方式记录点击,以便用户可以看到他们点击了哪些项目并在下一个屏幕上确认购买(这将是下一堂课)。
我看到了这个 youtube 视频,https://www.youtube.com/watch?v=VBN3LMb7rss&t=166s 这就是我想要“存储”“数据”或类似内容的方式。
亲切的问候, 这是我的代码。
package com.example.boo.cafestudent;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.Toast;
import java.util.ArrayList;
public class Order extends AppCompatActivity {
//ListView mackorListView;
//ArrayList <string> order_item_name;
// public final ArrayList<String> bestallning = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.orderactivity);
String[] mackor ={"Ostsmörgås","Skinksmörgås","Ost och Skinksmörgås", "Salamismörgås","Räksmörgås",
"Rensmörgås", "Älgsmörgås", "Köttbullesmörgås"};
ListAdapter johansadapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, mackor);
//hämtar ListView
ListView mackorListView = (ListView) findViewById(R.id.ListViewMackor);
//Hämtar data från array stringen
// final String[] array_mackor = getResources().getStringArray(R.array.arraymackor);
//skapandet av en array adapter
//Själva adaptern till ListView
mackorListView.setAdapter(johansadapter);
//kopplar onClicklistener till Listvie
mackorListView.setOnItemClickListener(
new AdapterView.OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id){
String mackor = String.valueOf(parent.getItemAtPosition(position));
Toast.makeText(Order.this, mackor + " har lagts till", Toast.LENGTH_LONG).show();
}
}
);
}
public void onClick (View View){
Intent i = new Intent (getApplicationContext(), Confirmation.class);
//Intent.putExtra("bestallning",bestallning);
startActivity(i);
}}
【问题讨论】:
-
一种方法是将项目存储在数据库中。 Google 提供 Room API 来帮助您与数据库交互。
-
我看到了这个 youtube 视频,youtube.com/watch?v=VBN3LMb7rss&t=166s 这就是我想要“存储”“数据”或类似的方式。
-
您是说您要允许用户从列表中选择项目吗?然后你将如何处理这些物品?
-
正确,然后用户将进入下一个活动,查看他们选择的内容,然后确认订单。
标签: java android-studio