<!=======abstract 一定要写============BeasActivity=================!>
public abstract class BeasActivity extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(intLayout());
intView();
intData();
}
protected abstract void intView();
protected abstract void intData();
protected abstract int intLayout();
}
<!======abstract 一定要写============ BeasFragment===============!>
public abstract class BeasFragment extends Fragment {
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(intlayout(), container, false);
intView();
intData();
return view;
}
protected abstract void intView();
protected abstract void intData();
protected abstract int intlayout();
}
<!===================App=================!>
public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
String path=Environment.getExternalStorageDirectory().getPath()+"/imger";
File file = new File(path);
ImageLoaderConfiguration configuration = new ImageLoaderConfiguration
.Builder(this)
.memoryCacheExtraOptions(200,200)
.memoryCacheSize(2*1024*1024)
.threadPoolSize(3).threadPriority(1000)
.diskCache(new UnlimitedDiskCache(file)).diskCacheFileCount(50)
.diskCacheFileNameGenerator(new Md5FileNameGenerator()).diskCacheSize(50*1024*1024)
.build();
ImageLoader.getInstance().init(configuration);
}
}
<!===================首页倒计时轮播图=================!>
public class MainActivity extends AppCompatActivity {
private Banner banner;
private TextView time;
private int i=5;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
banner = findViewById(R.id.banner);
time = findViewById(R.id.time);
List<String> list = new ArrayList<>();
list.add("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1505151721118&di=649c9a43aed72fbc4d99ec1a031510c6&imgtype=0&src=http%3A%2F%2Fimg.zcool.cn%2Fcommunity%2F015c7d574b9f8f6ac72525aee98351.jpg");
list.add("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1505151956771&di=0eb6f306991d24b67a13ceb336f80102&imgtype=0&src=http%3A%2F%2Fi0.hdslb.com%2Fbfs%2Farchive%2F00613def3f1beb7a35ae136341be2b589bc46a2d.jpg_320x200.jpg");
list.add("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1505151847685&di=c7a4b5d08ec43fa629bcb690039a7629&imgtype=0&src=http%3A%2F%2Fattimg.dospy.com%2Fimg%2Fday_080625%2F20080625_2e91a10c444877e88827vri2ZKdGMvQo.jpg");
list.add("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1505151825129&di=70bf74b87d8a15cb91a2d79f15ed0eaf&imgtype=0&src=http%3A%2F%2Fattimg.dospy.com%2Fimg%2Fday_081016%2F20081016_fee215664d5740e56c13E2YB8giERFEX.jpg");
list.add("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1505746504&di=930c4d677a02328a142d6fa85ed14580&imgtype=jpg&er=1&src=http%3A%2F%2Fattimg.dospy.com%2Fimg%2Fday_090113%2F20090113_6ac58b42bea94f0b318e1B6BZb5lPZl5.jpg");
banner.setImageLoader(new ImageLoader() {
@Override
public void displayImage(Context context, Object path, ImageView imageView) {
DisplayImageOptions options = new DisplayImageOptions.Builder()
.cacheInMemory(true).cacheOnDisk(true)
.build();
com.nostra13.universalimageloader.core.ImageLoader.getInstance()
.displayImage((String)path,imageView,options);
}
});
banner.setImages(list);
banner.isAutoPlay(true);
banner.setDelayTime(3000);
banner.start();
time.setText(i+"秒跳转");
handler.sendEmptyMessageDelayed(1,1000);
}
Handler handler= new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
if (i<=1){
Intent intent = new Intent(MainActivity.this,Main2Activity.class);
startActivity(intent);
return;
}
i--;
time.setText(i+"秒跳转");
handler.sendEmptyMessageDelayed(1,1000);
}
};
}
<!===================数据库网络图片=================!>
public class Show extends AppCompatActivity {
private ViewPager viewpager;
private DrawerLayout drawer;
private RadioGroup radiogroup;
private ArrayList<Fragment> list;
private String str="http://172.17.8.100/movieApi/movie/v1/findReleaseMovieList?count=10&page=1";
private PullToRefreshListView pullist;
private Adapter adapter;
private List<JsonData.ResultBean> ilist;
private Gson gson;
private Dao dao;
private Cursor cursor;
private ContentValues values;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_show);
dao = new Dao(Show.this);
viewpager = findViewById(R.id.viewpager);
drawer = (DrawerLayout) findViewById(R.id.drawer);
radiogroup = findViewById(R.id.radiogroup);
ImageView img = findViewById(R.id.img);
pullist = (PullToRefreshListView) findViewById(R.id.pullist);
final String path = "http://image.baidu.com/search/down?tn=download&word=download&ie=utf8&fr=detail&url=http%3A%2F%2Fimg5.duitang.com%2Fuploads%2Fitem%2F201410%2F05%2F20141005082835_2RTzn.thumb.700_0.jpeg&thumburl=http%3A%2F%2Fimg2.imgtn.bdimg.com%2Fit%2Fu%3D3846895839%2C2711067435%26fm%3D26%26gp%3D0.jpg";
DisplayImageOptions options = new DisplayImageOptions.Builder()
.cacheInMemory(true)//让图片进行内存缓存
.cacheOnDisk(true)//让图片进行sdcard缓存
.displayer(new CircleBitmapDisplayer())
// //显示效果:圆角
.displayer(new RoundedBitmapDisplayer(20))
.build();
ImageLoader.getInstance().displayImage(path,img,options);
pullist.setScrollingWhileRefreshingEnabled(true);
pullist.setMode(PullToRefreshListView.Mode.BOTH);
if (Http.isNetworkConnected(Show.this)){
Http.httpAsnycTask(str, new Http.Callbacks() {
@Override
public void getData(String s) {
Gson gson = new Gson();
JsonData json = gson.fromJson(s, JsonData.class);
ilist = json.getResult();
if (dao.query("show",null,null,null,null,null,null).moveToFirst()){
}else{
for (int i=0;i<ilist.size();i++){
values = new ContentValues();
values.put("name",ilist.get(i).getName());
values.put("imageUrl",ilist.get(i).getImageUrl());
dao.insert("show",null,values);
}
}
adapter = new Adapter(Show.this,ilist);
pullist.setAdapter(adapter);
pullist.onRefreshComplete();
}
});
}else {
cursor = dao.query("show", null, null, null, null, null, null);
ilist=new ArrayList<>() ;
if (cursor.moveToFirst()){
do {
String name = cursor.getString(cursor.getColumnIndex("name"));
String imageUrl = cursor.getString(cursor.getColumnIndex("imageUrl"));
ilist.add(new JsonData.ResultBean(name, imageUrl));
}while (cursor.moveToNext());
}
Toast.makeText(Show.this,"哎呀 没网了",Toast.LENGTH_LONG).show();
cursor.close();
adapter = new Adapter(Show.this, ilist);
pullist.setAdapter(adapter);
}
pullist.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
@Override
public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
if (Http.isNetworkConnected(Show.this)){
Http.httpAsnycTask(str, new Http.Callbacks() {
@Override
public void getData(String s) {
Gson gson = new Gson();
JsonData json = gson.fromJson(s, JsonData.class);
ilist = json.getResult();
if (dao.query("show",null,null,null,null,null,null).moveToFirst()){
}else{
for (int i=0;i<ilist.size();i++){
values = new ContentValues();
values.put("name",ilist.get(i).getName());
values.put("imageUrl",ilist.get(i).getImageUrl());
dao.insert("show",null,values);
}
}
adapter = new Adapter(Show.this,ilist);
pullist.setAdapter(adapter);
pullist.onRefreshComplete();
}
});
}else{
Toast.makeText(Show.this,"哎呀 没网了",Toast.LENGTH_LONG).show();
}
}
@Override
public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
if (Http.isNetworkConnected(Show.this)){
Http.httpAsnycTask(str, new Http.Callbacks() {
@Override
public void getData(String s) {
Gson gson = new Gson();
JsonData json = gson.fromJson(s, JsonData.class);
List<JsonData.ResultBean> beans = json.getResult();
ilist.addAll(beans);
adapter.notifyDataSetChanged();
pullist.onRefreshComplete();
}
});
}else{
Toast.makeText(Show.this,"哎呀 没网了",Toast.LENGTH_LONG).show();
}
}
});
radiogroup.check(radiogroup.getChildAt(0).getId());
list = new ArrayList<>();
FragMent fragMent = new FragMent();
FragMent2 fragMent2 = new FragMent2();
FragMent3 fragMent3 = new FragMent3();
list.add(fragMent);
list.add(fragMent2);
list.add(fragMent3);
viewpager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {
@Override
public Fragment getItem(int i) {
return list.get(i);
}
@Override
public int getCount() {
return list.size();
}
});
viewpager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int i, float v, int i1) {
}
@Override
public void onPageSelected(int i) {
radiogroup.check(radiogroup.getChildAt(i).getId());
}
@Override
public void onPageScrollStateChanged(int i) {
}
});
radiogroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId) {
case R.id.button:
viewpager.setCurrentItem(0);
break;
case R.id.button1:
viewpager.setCurrentItem(1);
break;
case R.id.button2:
viewpager.setCurrentItem(2);
break;
}
}
});
<!===================Tadlayout布局=================!>
<android.support.design.widget.TabLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tab"
app:tabGravity="fill"/>
<android.support.v4.view.ViewPager
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/pager"/>
<!===================Tadlayout代码=================!>
public class FragMent extends Fragment {
private TabLayout tab;
private ViewPager pager;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View inflate = inflater.inflate(R.layout.fragment1, null);
tab = inflate.findViewById(R.id.tab);
pager = inflate.findViewById(R.id.pager);
TabAdapter adapter = new TabAdapter(getChildFragmentManager());
pager.setAdapter(adapter);
tab.setupWithViewPager(pager);
return inflate;
}
}
<!===================Tadlayout适配器=================!>
public class TabAdapter extends FragmentPagerAdapter {
String[] strings=new String[]{"第一个","第二个"};
public TabAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int i) {
switch (i){
case 0:
return new FragMent01();
case 1:
return new FragMent02();
}
return null;
}
@Override
public int getCount() {
return strings.length;
}
@Nullable
@Override
public CharSequence getPageTitle(int position) {
return strings[position];
}
}
<!==================PullToRefreshBase带数据库==================!>
public class frag01 extends Fragment {
private Adapter adapter;
private List<JsonData.ResultBean> ilist;
private String str="http://172.17.8.100/movieApi/movie/v1/findReleaseMovieList?count=10&page=1";
private Dao dao;
private Cursor cursor;
private PullToRefreshListView pull;
private ContentValues values;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View inflate = inflater.inflate(R.layout.frag01, null);
dao = new Dao(getActivity());
pull = inflate.findViewById(R.id.pull);
pull.setMode(PullToRefreshBase.Mode.BOTH);
pull.setScrollingWhileRefreshingEnabled(true);
if (Http.isNetworkConnected(getActivity())){
Http.httpAsnycTask(str, new Http.Callbacks() {
@Override
public void getData(String s) {
Gson gson = new Gson();
JsonData json = gson.fromJson(s, JsonData.class);
ilist = json.getResult();
if (dao.query("show",null,null,null,null,null,null).moveToFirst()){
}else{
for (int i=0;i<ilist.size();i++){
values = new ContentValues();
values.put("name",ilist.get(i).getName());
values.put("imageUrl",ilist.get(i).getImageUrl());
dao.insert("show",null,values);
}
}
adapter = new Adapter((Show) getActivity(),ilist);
pull.setAdapter(adapter);
}
});
}else{
cursor = dao.query("show", null, null, null, null, null, null);
ilist = new ArrayList<>();
if (cursor.moveToFirst()){
do {
String name = cursor.getString(cursor.getColumnIndex("name"));
String imageUrl = cursor.getString(cursor.getColumnIndex("imageUrl"));
boolean add = ilist.add(new JsonData.ResultBean(name, imageUrl));
}while (cursor.moveToNext());
}
Toast.makeText(getActivity(),"哎呀 没网了",Toast.LENGTH_LONG).show();
cursor.close();
adapter = new Adapter((Show) getActivity(), ilist);
pull.setAdapter(adapter);
}
pull.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
@Override
public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
if (Http.isNetworkConnected(getActivity())){
Http.httpAsnycTask(str, new Http.Callbacks() {
@Override
public void getData(String s) {
Gson gson = new Gson();
JsonData json = gson.fromJson(s, JsonData.class);
ilist = json.getResult();
if (dao.query("show",null,null,null,null,null,null).moveToFirst()){
}else{
for (int i=0;i<ilist.size();i++){
values = new ContentValues();
values.put("name",ilist.get(i).getName());
values.put("imageUrl",ilist.get(i).getImageUrl());
dao.insert("show",null,values);
}
}
adapter = new Adapter((Show) getActivity(),ilist);
pull.setAdapter(adapter);
pull.onRefreshComplete();
}
});
}else{
Toast.makeText(getActivity(),"哎呀 没网了",Toast.LENGTH_LONG).show();
}
}
@Override
public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
if (Http.isNetworkConnected(getActivity())){
Http.httpAsnycTask(str, new Http.Callbacks() {
@Override
public void getData(String s) {
Gson gson = new Gson();
JsonData json = gson.fromJson(s, JsonData.class);
List<JsonData.ResultBean> beans = json.getResult();
ilist.addAll(beans);
adapter.notifyDataSetChanged();
pull.onRefreshComplete();
}
});
}else{
Toast.makeText(getActivity(),"哎呀 没网了",Toast.LENGTH_LONG).show();
}
}
});
return inflate;
}
}
<!==================Xlistview带数据库==================!>
public class frag02 extends Fragment {
private String str="https://api.apiopen.top/musicRankings";
private List<JsonBean.ResultBean> list;
private Dao dao;
private Cursor cursor;
private MyAdapter adapter;
private XListView xlistview;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View inflate = inflater.inflate(R.layout.frag02, null);
dao = new Dao(getActivity());
xlistview = inflate.findViewById(R.id.xlistview);
xlistview.setPullLoadEnable(true);
if (Http.isNetworkConnected(getActivity())){
Http.httpAsnycTask(str, new Http.Callbacks() {
@Override
public void getData(String s) {
Gson gson = new Gson();
JsonBean bean = gson.fromJson(s, JsonBean.class);
list = bean.getResult();
if (dao.query("mus",null,null,null,null,null,null).moveToFirst()){
}else {
for (int i=0; i<list.size();i++){
ContentValues values = new ContentValues();
values.put("text",list.get(i).getName());
values.put("img",list.get(i).getPic_s192());
dao.insert("mus",null,values);
}
}
adapter = new MyAdapter(getActivity(),list);
xlistview.setAdapter(adapter);
}
});
}else {
cursor = dao.query("mus", null, null, null, null, null, null);
list= new ArrayList<JsonBean.ResultBean>();
if (cursor.moveToFirst()){
do {
String text = cursor.getString(cursor.getColumnIndex("text"));
String img = cursor.getString(cursor.getColumnIndex("img"));
boolean add = list.add(new JsonBean.ResultBean(text, img));
}while (cursor.moveToNext());
}
Toast.makeText(getActivity(),"没网了",Toast.LENGTH_SHORT).show();
cursor.close();
adapter = new MyAdapter(getActivity(),list);
xlistview.setAdapter(adapter);
}
xlistview.setXListViewListener(new XListView.IXListViewListener() {
@Override
public void onRefresh() {
if (Http.isNetworkConnected(getActivity())){
Http.httpAsnycTask(str, new Http.Callbacks() {
@Override
public void getData(String s) {
Gson gson = new Gson();
JsonBean bean = gson.fromJson(s, JsonBean.class);
list = bean.getResult();
if (dao.query("mus",null,null,null,null,null,null).moveToFirst()){
}else {
for (int i=0; i<list.size();i++){
ContentValues values = new ContentValues();
values.put("text",list.get(i).getName());
values.put("img",list.get(i).getPic_s192());
dao.insert("mus",null,values);
}
}
adapter = new MyAdapter(getActivity(),list);
xlistview.setAdapter(adapter);
onLoad();
}
});
}else {
Toast.makeText(getActivity(),"没网了",Toast.LENGTH_SHORT).show();
}
}
@Override
public void onLoadMore() {
if (Http.isNetworkConnected(getActivity())){
Http.httpAsnycTask(str, new Http.Callbacks() {
@Override
public void getData(String s) {
Gson gson = new Gson();
JsonBean bean = gson.fromJson(s, JsonBean.class);
List<JsonBean.ResultBean> result = bean.getResult();
list.addAll(result);
adapter.notifyDataSetChanged();
onLoad();
}
});
}else {
Toast.makeText(getActivity(),"没网了",Toast.LENGTH_SHORT).show();
}
}
});
return inflate;
}
private void onLoad(){
xlistview.stopRefresh();
xlistview.stopLoadMore();
xlistview.setRefreshTime("刚刚刷新过");
}
}