Android-Listview所选项目
我做了一个列表视图,我想让用户输入一个选项。我该怎么做?Atm I只创建了ListView并显示了数据 是否有一种简单的方法可以获取ListView中所选项目的值并在以后使用?类似ListView单选按钮的东西 XML:Android-Listview所选项目,android,listview,Android,Listview,我做了一个列表视图,我想让用户输入一个选项。我该怎么做?Atm I只创建了ListView并显示了数据 是否有一种简单的方法可以获取ListView中所选项目的值并在以后使用?类似ListView单选按钮的东西 XML: 列表视图: public class TubeDataArchive extends Fragment { public TubeDataArchive() { // Required empty public constructor } @Overrid
列表视图:
public class TubeDataArchive extends Fragment {
public TubeDataArchive() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_tube_data_archive, container, false);
ListView tubeDataList = (ListView) view.findViewById(R.id.lv_tubeData);
//load tube data
SharedPreferences settings = getActivity().getSharedPreferences("PREFS",0);
String tubeDataString = settings.getString("tubeData", "");
String[] tubeDataSplit = tubeDataString.split("\n");
List<String> tubeDataItems = new ArrayList<>();
for(int i=0; i<tubeDataSplit.length;i++)
{
tubeDataItems.add(tubeDataSplit[i]);
}
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(),
android.R.layout.simple_list_item_1, android.R.id.text1, tubeDataItems);
// Assign adapter to ListView
tubeDataList.setAdapter(adapter);
return view;
}
}
公共类TubeDataArchive扩展了片段{
公共TubeDataArchive(){
//必需的空公共构造函数
}
@凌驾
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
//为该碎片膨胀布局
视图=充气机。充气(R.layout.fragment\u tube\u data\u archive,container,false);
ListView tubeDataList=(ListView)view.findViewById(R.id.lv_tubeData);
//负荷管数据
SharedReferences设置=getActivity()。GetSharedReferences(“首选项”,0);
String tubeDataString=settings.getString(“tubeData”,“tubeData”);
字符串[]tubeDataSplit=tubeDataString.split(“\n”);
List tubeDataItems=new ArrayList();
对于(int i=0;i将ItemClickListener添加到listview
tubeDataList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Toast.makeText(getapplicationcontext(), tubeDataItems.get(id),
Toast.LENGTH_LONG).show();
}
});
tubeDataList.setOnItemClickListener(新的OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父级、视图、,
内部位置,长id){
Toast.makeText(getapplicationcontext(),tubeDataItems.get(id),
Toast.LENGTH_LONG).show();
}
});
是否有一种简单的方法来获取所选项目的值
ListView,以后再使用
在for循环之后添加onItemClickListener
tubeDataList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
// do whatever you want
Log.d("############","Items " + tubeDataSplit[arg2] );
}
});
tubeDataList.setOnItemClickListener(新的OnItemClickListener(){
@凌驾
公共视图单击(AdapterView arg0、视图arg1、整型arg2、长型arg3){
//你想干什么就干什么
Log.d(“#############,”“Items”+tubeDataSplit[arg2]);
}
});
类似ListView单选按钮的东西
如果你想拥有一个带有单选按钮的列表视图
,那么你需要创建一个自定义的列表视图
布局。我已经在使用适配器。Useles回答…这个问题有什么更新吗?这是什么?tubeDataItems.get(id)
它不起作用
tubeDataList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
// do whatever you want
Log.d("############","Items " + tubeDataSplit[arg2] );
}
});