dots = new ArrayList();
dots.clear();
ll_frag.removeAllViews();
for (int i = 0; i < pictures.length; i++) {
ImageView imageView = new ImageView(getActivity());
if (i == 0) {imageView.setImageResource(R.drawable.focus);
} else {
imageView.setImageResource(R.drawable.normal);
}
LayoutParams params = new LayoutParams(20, 20);
params.setMargins(5, 0, 5, 0);
dots.add(imageView);
ll_frag.addView(imageView, params);
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<corners android:radius="8dp"/>
<solid android:color="#ff0000"/>
</shape>
package com.bwei.news.fragment;
import java.util.ArrayList;
import java.util.List;
import me.maxwin.view.XListView;
import me.maxwin.view.XListView.IXListViewListener;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Handler;
import android.support.v4.app.Fragment;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.AdapterView.OnItemLongClickListener;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.LinearLayout.LayoutParams;
import android.widget.Toast;
import com.bwei.news.R;
import com.bwei.news.activity.WebActivity;
import com.bwei.news.adapter.TouPageAdapter;
import com.bwei.news.adapter.TouTiaoAdapter;
import com.bwei.news.bean.TouTiao;
import com.bwei.news.bean.TouTiao.MyList;
import com.bwei.news.netpath.HttpPath;
import com.bwei.news.util.GetGsonStringUtils;
import com.google.gson.Gson;
import com.umeng.socialize.ShareAction;
import com.umeng.socialize.UMShareAPI;
import com.umeng.socialize.UMShareListener;
import com.umeng.socialize.bean.SHARE_MEDIA;
import com.umeng.socialize.media.UMImage;
public class BaseFragment extends Fragment implements IXListViewListener {
private XListView xlv_shouye_toutiao;
private UMImage image;
public UMShareAPI umShareAPI;
ArrayList<MyList> list = new ArrayList<MyList>();
private String url;
private String title;
private ViewPager vp_shouye_toutiao;
private List<ImageView> dots;
private LinearLayout ll_dots;
final SHARE_MEDIA[] displaylist = new SHARE_MEDIA[] { SHARE_MEDIA.WEIXIN,
SHARE_MEDIA.WEIXIN_CIRCLE, SHARE_MEDIA.SINA, SHARE_MEDIA.QQ,
SHARE_MEDIA.QZONE, SHARE_MEDIA.DOUBAN };
Handler handler = new Handler() {
public void handleMessage(android.os.Message msg) {
if(msg.what==1){
int currentItem = vp_shouye_toutiao.getCurrentItem();
currentItem++;
vp_shouye_toutiao.setCurrentItem(currentItem);
handler.sendEmptyMessageDelayed(1, 2000);
}
};
};
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.shouye_toutiao_fragment,
container, false);
xlv_shouye_toutiao = (XListView) view
.findViewById(R.id.xlv_shouye_toutiao);
vp_shouye_toutiao = (ViewPager) view
.findViewById(R.id.vp_shouye_toutiao);
ll_dots = (LinearLayout) view.findViewById(R.id.ll_dots);
// 准备小圆点
initDots();
xlv_shouye_toutiao.setPullLoadEnable(true);
xlv_shouye_toutiao.setPullRefreshEnable(true);
xlv_shouye_toutiao.setXListViewListener(this);
// 设置长按监听
xlv_shouye_toutiao
.setOnItemLongClickListener(new OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> parent,
View view, int position, long id) {
// 分享
shareboard();
return false;
}
});
umShareAPI = UMShareAPI.get(getActivity());
toutiao_as = new MyAsynTask();
path = HttpPath.HTTP_TOUTIAO + "&uid=" + getGetTitle();
toutiao_as.execute(path);
Log.e("msg", "====================path" + path);
return view;
}
public class MyAsynTask extends AsyncTask<String, String, TouTiao> {
@Override
protected TouTiao doInBackground(String... params) {
String string = GetGsonStringUtils.getMyGson(params[0]);
Log.i("haha", string);
Gson gson = new Gson();
TouTiao touTiao = gson.fromJson(string, TouTiao.class);
return touTiao;
}
@Override
protected void onPostExecute(final TouTiao result) {
super.onPostExecute(result);
list.addAll(result.data.list);
xlv_shouye_toutiao.setAdapter(new TouTiaoAdapter(getActivity(),
list));
vp_shouye_toutiao
.setAdapter(new TouPageAdapter(getActivity(), list,handler));
handler.sendEmptyMessageDelayed(1, 2000);
// 为vp_shouye_toutiao添加监听
vp_shouye_toutiao
.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
for (int i = 0; i < 4; i++) {
if (i == arg0 % 4) {
dots.get(i).setImageResource(
R.drawable.focus);
} else {
dots.get(i).setImageResource(
R.drawable.normal);
}
}
}
@Override
public void onPageScrolled(int arg0, float arg1,
int arg2) {
// TODO Auto-generated method stub
}
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
});
Log.e("msg", "========setAdapter============path"
+ xlv_shouye_toutiao);
xlv_shouye_toutiao
.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent,
View view, int position, long id) {
url = result.data.list.get(position - 1).link;
title = result.data.list.get(position - 1).title;
image = new UMImage(getActivity(), result.data.list
.get(position - 1).pic);
Intent intent = new Intent(getActivity(),
WebActivity.class);
intent.putExtra("link",
result.data.list.get(position - 1).link);
getActivity().startActivity(intent);
}
});
}
}
private void initDots() {
dots = new ArrayList<ImageView>();
dots.clear();
ll_dots.removeAllViews();
for (int i = 0; i < 4; i++) {
ImageView imageView = new ImageView(getActivity());
if (i == 0) {
imageView.setImageResource(R.drawable.focus);
} else {
imageView.setImageResource(R.drawable.normal);
}
LayoutParams params = new LayoutParams(20, 20);
params.setMargins(5, 0, 5, 0);
dots.add(imageView);
ll_dots.addView(imageView, params);
}
}
private void shareboard() {
new ShareAction(getActivity()).setDisplayList(displaylist)
.withText("柏亮新闻").withTitle(title).withTargetUrl(url)
.withMedia(image).setListenerList(umShareListener).open();
}
private UMShareListener umShareListener = new UMShareListener() {
@Override
public void onResult(SHARE_MEDIA platform) {
Toast.makeText(getActivity(), platform + " 分享成功啦",
Toast.LENGTH_SHORT).show();
}
@Override
public void onError(SHARE_MEDIA platform, Throwable t) {
Toast.makeText(getActivity(), platform + " 分享失败啦",
Toast.LENGTH_SHORT).show();
}
@Override
public void onCancel(SHARE_MEDIA platform) {
Toast.makeText(getActivity(), platform + " 分享取消了",
Toast.LENGTH_SHORT).show();
}
};
private String path;
private String getTitle;
private MyAsynTask toutiao_as;
public String getGetTitle() {
return getTitle;
}
public void setGetTitle(String getTitle) {
this.getTitle = getTitle;
}
// public abstract String getTitle();
@Override
public void onRefresh() {
handler.postDelayed(new Runnable() {
@Override
public void run() {
list.clear();
MyAsynTask as = new MyAsynTask();
as.execute(path);
onLoad();
}
}, 2000);
}
@Override
public void onLoadMore() {
handler.postDelayed(new Runnable() {
@Override
public void run() {
MyAsynTask as = new MyAsynTask();
as.execute(path);
onLoad();
}
}, 2000);
}
private void onLoad() {
xlv_shouye_toutiao.stopRefresh();
xlv_shouye_toutiao.stopLoadMore();
xlv_shouye_toutiao.setRefreshTime("刚刚");
}
}