Android界面展示web package com.bwie.week3_test02; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.webkit.WebView; import android.webkit.WebViewClient; public class Main2Activity extends AppCompatActivity { private WebView wv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main2); initView(); wv.loadUrl("http://baidu.com"); wv.setWebViewClient(new WebViewClient(){ @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { // TODO Auto-generated method stub //返回值是true的时候控制去WebView打开,为false调用系统浏览器或第三方浏览器 view.loadUrl(url); return true; } }); } private void initView() { wv = (WebView) findViewById(R.id.wv); } } tablayout的使用package com.bwie.fragment; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.design.widget.TabLayout; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.view.ViewPager; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import com.bwie.childfragment.Fragment021; import com.bwie.childfragment.Fragment022; import com.bwie.childfragment.Fragment023; import com.bwie.week3_test02.R; import java.util.ArrayList; import java.util.List; public class Fragment01 extends Fragment { private View view; private TabLayout tl; private ViewPager vp; private String[] titles=new String[]{"头条", "娱乐", "科技"}; private ArrayList<Fragment> fragments; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment01, container, false); initView(view); for (int i = 0; i <fragments.size() ; i++) { tl.addTab(tl.newTab()); } MyAdapter adapter = new MyAdapter(getChildFragmentManager()); adapter.setFragList(fragments); vp.setAdapter(adapter); for (int i = 0; i <fragments.size() ; i++) { tl.getTabAt(i).setText(titles[i]); } return view; } private void initView(View view) { tl = (TabLayout) view.findViewById(R.id.tl); vp = (ViewPager) view.findViewById(R.id.vp); tl.setupWithViewPager(vp); fragments = new ArrayList<>(); fragments.add(new Fragment021()); fragments.add(new Fragment022()); fragments.add(new Fragment023()); } private class MyAdapter extends FragmentPagerAdapter { public MyAdapter(FragmentManager fm) { super(fm); } private List<Fragment> list; public void setFragList(List<Fragment> list1){ this.list=list1; } @Override public Fragment getItem(int position) { return list.get(position); } @Override public int getCount() { return list.size(); } } }PullToRefreshListView添加viewpager头部实现viewpager获取网络图片无限自动轮播,上拉刷新,下拉加载
package com.bwie.childfragment; import android.content.Intent; import android.os.AsyncTask; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.support.annotation.Nullable; import android.support.v4.app.Fragment; import android.support.v4.view.PagerAdapter; import android.support.v4.view.ViewPager; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ImageView; import android.widget.ListView; import com.bwie.adapter.MyPlvAdapter; import com.bwie.bean.Bean; import com.bwie.utils.Utils; import com.bwie.week3_test02.Main2Activity; import com.bwie.week3_test02.R; import com.google.gson.Gson; import com.handmark.pulltorefresh.library.PullToRefreshBase; import com.handmark.pulltorefresh.library.PullToRefreshListView; import com.nostra13.universalimageloader.core.ImageLoader; import java.util.ArrayList; import java.util.List; /** * Created by zhan on 2017/12/30. */ public class Fragment021 extends Fragment{ private ViewPager vp; private List<String> list; private PullToRefreshListView plv; private ListView lv; private List<Bean.DataBean> data; String url = "http://www.93.gov.cn/93app/data.do?channelId=0&startNum="; Handler handler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); if (msg.what == 0) { int currentItem = vp.getCurrentItem(); vp.setCurrentItem(currentItem+1); handler.sendEmptyMessageDelayed(0, 2000); } } }; private View header; private int page=0; private MyPlvAdapter plvAdapter; private MyAdapter adapter; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment021, container, false); header = View.inflate(getActivity(), R.layout.header, null); vp = header.findViewById(R.id.vp); initView(); plv = view.findViewById(R.id.plv); ListView listView = plv.getRefreshableView(); listView.addHeaderView(header); plv.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { Intent intent = new Intent(getActivity(), Main2Activity.class); startActivity(intent); getActivity().finish(); } }); getpage(); getNetData(); plv.setMode(PullToRefreshBase.Mode.BOTH); plv.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() { @Override public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) { data.clear(); getNetData(); } @Override public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) { page++; getNetData(); plvAdapter.notifyDataSetChanged(); } }); return view; } private void getNetData() { new AsyncTask<String,Integer,String>(){ @Override protected String doInBackground(String... strings) { String json = new Utils().getJson(url+page); return json; } @Override protected void onPostExecute(String s) { super.onPostExecute(s); Gson gson = new Gson(); Bean bean = gson.fromJson(s, Bean.class); data = bean.getData(); plvAdapter = new MyPlvAdapter(getActivity(), data); plv.setAdapter(plvAdapter); plv.onRefreshComplete(); } }.execute(); } private void getpage() { adapter = new MyAdapter(); vp.setAdapter(adapter); vp.setCurrentItem(list.size()*1000); handler.sendEmptyMessageDelayed(0, 2000); } private void initView() { list=new ArrayList<>(); list.add("http://pic39.nipic.com/20140226/18071023_164300608000_2.jpg"); list.add("http://a0.att.hudong.com/15/08/300218769736132194086202411_950.jpg"); list.add("https://img-my.csdn.net/uploads/201309/01/1378037235_7476.jpg"); list.add("http://pic39.nipic.com/20140226/18071023_164300608000_2.jpg "); list.add("https://img-my.csdn.net/uploads/201309/01/1378037235_7476.jpg"); } class MyAdapter extends PagerAdapter { @Override public int getCount() { return Integer.MAX_VALUE; } @Override public boolean isViewFromObject(View view, Object object) { return view==object; } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView((View) object); } @Override public Object instantiateItem(ViewGroup container, int position) { ImageView iv=new ImageView(getActivity()); iv.setScaleType(ImageView.ScaleType.FIT_XY); ImageLoader.getInstance().displayImage(list.get(position%list.size()),iv); container.addView(iv); return iv; } } }
TabLayout与PullToRefreshListView的简单使用
最新推荐文章于 2023-12-18 15:40:07 发布