AndroidStudio开发在fragment里点击Listview中的Item网页跳转

标题AndroidStudio开发在fragment里点击Listview中的Item网页跳转

参考的文章
此刻的心情有点小激动,第一次写博客,这个博客早就注册了的,之前觉得没有写的必要,但今天我醒悟了,为了我的开发之旅能够走得更远,在开发的旅途中遇到的困难,求了度娘好久才寻到解决困难的关键密钥,不记录下来感觉少做一件事似的。为什么要写呢?第一,为了巩固及记录每实现一个功能或者解决一个问题的知识点和方便以后再次面对这样的问题的时候少点麻烦,而且在记录的过程中还可以学到新东西和新思想。第二,希望能够给亟待解决类似的问题的人增加一个参考方案,真的很感谢那些愿意分享自己宝贵经验的开发者,您们是IT界的每一缕阳光,引领我们这些初学者从黑暗中走出来,感谢每一位分享者,愿您们都被时光温柔以待!
1、要实现listview的跳转当然少不了在xml里面添加listview控件,在创建一个XML来显示item中的文字textview。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2、我在这里用两个方法实现点击任何一个item进行网页跳转
在这里插入图片描述
public class Share {
private String aName;
public Share() {
}

public Share(String aName) {
    this.aName = aName;}
  public String getaName() {
    return aName;
}
  public void setaName(String aName) {
    this.aName = aName;
}
public class ShareBase extends BaseAdapter {
private LinkedList<Share> mData;
private Context mContext;
public ShareBase(LinkedList<Share> mData, Context mContext) {
    this.mData = mData;
    this.mContext = mContext;
}

@Override
public int getCount() {
    return  mData.size();
}

@Override
public Object getItem(int position) {
    return null;
}

@Override
public long getItemId(int position) {
    return position;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    convertView = LayoutInflater.from(mContext).inflate(R.layout.know_list,parent,false);
     TextView txt_aName = (TextView) convertView.findViewById(R.id.txt_content);
      txt_aName.setText(mData.get(position).getaName());
        return convertView;
}
}

第一种方法
public class Tab_frag_knowledge extends Fragment{
private List mData = null;
private Context mContext;
private ShareBase mAdapter = null;
private ListView list_share;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
	View view = inflater.inflate(R.layout.knowledge, null);
	return view;
}

@Override
public void onActivityCreated(Bundle savedInstanceState) {
	super.onActivityCreated(savedInstanceState);
	init();
}
private void init() {
	mContext = getActivity();
	list_share = (ListView) getView().findViewById(R.id.list);
	mData = new LinkedList<Share>();
	mData.add(new Share("点一"));
	mData.add(new Share("点二"));
	mData.add(new Share("点三"));
	mData.add(new Share("点四"));
	mData.add(new Share("点五"));
	mAdapter = new ShareBase((LinkedList<Share>) mData, mContext);

	list_share.setAdapter(mAdapter);//设置监听
	list_share.setOnItemClickListener(new AdapterView.OnItemClickListener() {
		@Override
		public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
		switch (position) {
				case 0:
					Uri uri = Uri.parse("https://hao.360.cn");
					Intent intent = new Intent(Intent.ACTION_VIEW, uri);
					startActivity(intent);
					break;
				case 1:
					Uri uri1 = Uri.parse("https://hao.360.cn");
					Intent intent1 = new Intent(Intent.ACTION_VIEW, uri1);
					startActivity(intent1);
					break;
				case 2:
					Uri uri2 = Uri.parse("https://hao.360.cn");
					Intent intent2 = new Intent(Intent.ACTION_VIEW, uri2);
					startActivity(intent2);
					break;
				case 3:
					Uri uri3 = Uri.parse("https://hao.360.cn");
					Intent intent3 = new Intent(Intent.ACTION_VIEW, uri3);
					startActivity(intent3);
					break;
				case 4:
					Uri uri4 = Uri.parse("https://hao.360.cn");
					Intent intent4 = new Intent(Intent.ACTION_VIEW, uri4);
					startActivity(intent4);
					break;
			}
			}
			});
}

}
第二种方法
我初始化数组,将网址放在数组,直接使用
String[] strs ={“https://www.baidu.com”,“https://www.baidu.com”,“https://www.baidu.com”,“https://www.baidu.com”,“https://www.baidu.com”,};
Uri uri = Uri.parse(strs[position]);
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
进行网页跳转。
路过的您看到这篇博客,如果有更好的方法,希望提出宝贵意见,手留余香,谢谢!

猜你喜欢

转载自blog.csdn.net/qq_39784713/article/details/82928591