用discuz做的手机网站做收益的网站多少钱
- 作者: 五速梦信息网
- 时间: 2026年04月20日 06:59
当前位置: 首页 > news >正文
用discuz做的手机网站,做收益的网站多少钱,长尾词seo排名,网站建设经营范围怎么写问题简介 在学习开发android过程中#xff0c;遇到了一个似乎很普遍的问题。当我们在初始化通过adapter将Listview和对应的Arraylist 数据data绑定时#xff0c;在后面的data更新后#xff0c;理论上使用adapter.notifyDataSetChanged()方法就可以让adapter自动更新Arrayli…问题简介 在学习开发android过程中遇到了一个似乎很普遍的问题。当我们在初始化通过adapter将Listview和对应的Arraylist 数据data绑定时在后面的data更新后理论上使用adapter.notifyDataSetChanged()方法就可以让adapter自动更新Arraylist列表但是实际上我们在对data更新之后并不能完成对视图中ListView的更新问bing问了一通也没问出啥解决方法最后还是查了半天才明白咋回事。。。 结论 解决方法① 可能是最有效的解决方法 将更新后的数据data和视图ListView与适配器adapter重新绑定 即调用绑定时的方法 datanew_data;//有数据更新 adapternew ArrayAdapterString(getActivity(),android.R.layout.simple_list_item_1,data); listView.setAdapter(adapter);解决方法② 对于Arraylist类型的数据data只在原对象上修改不能重新赋值因为重新赋值实质上改变了data所指向的对象导致adapter的绑定出现问题,这可能也是notifyDataSetChanged()一个使用条件。 data.add(123);//数据更新 //不能datanew_data; adapter.notifyDataSetChanged();下面可以不用看啦 代码分析 package com.example.test.ui.slideshow;import static java.lang.System.out;import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.EditText; import android.widget.ListView; import android.widget.Toast;import androidx.annotation.NonNull; import androidx.fragment.app.Fragment;import com.example.test.R;import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.ArrayList; import java.util.Arrays;public class SlideshowFragment extends Fragment implements View.OnClickListener {//private Integer[] data{1,2,3,5,65,6,7,4,4,6,44,33,9,6,6,49491,85,5,6,2,25,51,25,20,2};private String[] ori_data{test_keyword1,test_keyword2,test_keyword3,test_keyword4,test_keyword1,test_keyword2,test_keyword3,test_keyword4,test_keyword1,test_keyword2,test_keyword3,test_keyword4,test_keyword1,test_keyword2,test_keyword3,test_keyword4};private ArrayListString data new ArrayList(Arrays.asList(ori_data));private ArrayAdapterString adapternull;private ListView listView;public View onCreateView(NonNull LayoutInflater inflater,ViewGroup container, Bundle savedInstanceState) {super.onCreate(savedInstanceState);View view inflater.inflate(R.layout.fragment_email,container,false);listView(ListView) view.findViewById(R.id.list_email);adapternew ArrayAdapterString(getActivity(),android.R.layout.simple_list_item_1,data);listView.setAdapter(adapter);//单击每个item进行编辑listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {Overridepublic void onItemClick(AdapterView? parent, View view, int position, long id) {edit_item(position,adapter);}});listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {Overridepublic boolean onItemLongClick(AdapterView? parent, View view, int position, long id) {del_item(position,adapter);return true; // 返回true表示已经处理了长按事件不会触发单击事件}});view.findViewById(R.id.btn_add).setOnClickListener(this);view.findViewById(R.id.btn_sync).setOnClickListener(this);view.findViewById(R.id.btn_save).setOnClickListener(this);view.findViewById(R.id.btn_submit).setOnClickListener(this);return view;}Overridepublic void onClick(View v) {if(v.getId()R.id.btn_add){edit_item(data.size(), adapter);}else if(v.getId()R.id.btn_sync){//从服务器将数据同步到客户端dataload();adapternew ArrayAdapterString(getActivity(),android.R.layout.simple_list_item_1,data);listView.setAdapter(adapter);Toast.makeText(getActivity(),已成功加载,Toast.LENGTH_SHORT).show();}else if(v.getId()R.id.btn_save){save();Toast.makeText(getActivity(),已成功保存,Toast.LENGTH_SHORT).show();}else if(v.getId()R.id.btn_submit){}}private void save(){FileOutputStream outnull;BufferedWriter writernull;try{out getActivity().openFileOutput(test_datasave.txt, Context.MODE_PRIVATE);writernew BufferedWriter(new OutputStreamWriter(out));for (String str : data) {writer.write(str);writer.write(\n);}} catch (IOException e) {e.printStackTrace();}finally {try{if(writer!null){writer.close();}} catch (IOException e) {e.printStackTrace();}}}private ArrayListString load(){ArrayListString datanew ArrayList();FileInputStream in null;BufferedReader readernull;try{ingetActivity().openFileInput(test_datasave.txt);readernew BufferedReader(new InputStreamReader(in));String line;while((linereader.readLine())!null){data.add(line.toString());}} catch (FileNotFoundException e) {e.printStackTrace();Toast.makeText(getActivity(),未找到文件,Toast.LENGTH_SHORT).show();} catch (IOException e) {e.printStackTrace();}finally {if(reader!null){try{reader.close();}catch(IOException e){e.printStackTrace();}}}return data;}//用于弹出dialog 并修改其中的某一项private void edit_item(int postition,ArrayAdapterString adapter){AlertDialog.Builder dialognew AlertDialog.Builder(getActivity());dialog.setTitle(编辑);EditText editTextnew EditText(getActivity());editText.setHint(请键入新的关键词);dialog.setView(editText);dialog.setPositiveButton(确认, new DialogInterface.OnClickListener() {Overridepublic void onClick(DialogInterface dialog, int which) {final String inputTexteditText.getText().toString();if(data.size()postition){data.add(inputText);}else data.set(postition,inputText);adapter.notifyDataSetChanged();}});dialog.show();}//用于弹出一个dialog,用于确认删除其中的某一项private void del_item(int postition,ArrayAdapterString adapter){AlertDialog.Builder dialognew AlertDialog.Builder(getActivity());dialog.setTitle(删除);dialog.setMessage(确认删除这一项?);dialog.setPositiveButton(确认, new DialogInterface.OnClickListener() {Overridepublic void onClick(DialogInterface dialog, int which) {data.remove(postition);adapter.notifyDataSetChanged();}});dialog.setNegativeButton(取消, new DialogInterface.OnClickListener() {Overridepublic void onClick(DialogInterface dialog, int which) {}});dialog.show();} }
- 上一篇: 用dede做的网站关键词是什么
- 下一篇: 用dreamever如何建设网站用模板建站
相关文章
-
用dede做的网站关键词是什么
用dede做的网站关键词是什么
- 技术栈
- 2026年04月20日
-
用c语言做网站文明网站建设情况报告
用c语言做网站文明网站建设情况报告
- 技术栈
- 2026年04月20日
-
用cms建网站容易吗小兔自助建站系统
用cms建网站容易吗小兔自助建站系统
- 技术栈
- 2026年04月20日
-
用dreamever如何建设网站用模板建站
用dreamever如何建设网站用模板建站
- 技术栈
- 2026年04月20日
-
用dw 网站开发与设计报告公司建设网站
用dw 网站开发与设计报告公司建设网站
- 技术栈
- 2026年04月20日
-
用dw制作网站模板下载建设厅电工证查询网站
用dw制作网站模板下载建设厅电工证查询网站
- 技术栈
- 2026年04月20日
