public class F1 extends Fragment {
private ViewPager vp;
private LinearLayout ll;
private List<String> imUrl;
private List<View> list;
private int num=0;
private int time=0;
private Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what){
case 0:
vp.setCurrentItem(time);
break;
case 1:
String str= (String) msg.obj;
text_view.setText(str);
break;
}
}
};
private EditText ed_name;
private TextView text_view;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.f1,container,false);
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
vp = (ViewPager) getView().findViewById(R.id.vp1);
ll = (LinearLayout) getView().findViewById(R.id.ly);
initData();
vp.setAdapter(new Mydata());
intiView();
vp.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
list.get(position % imUrl.size()).setBackgroundResource(R.mipmap.btn_radio_on_holo_dark);
list.get(num % imUrl.size()).setBackgroundResource(R.mipmap.btn_radio_on_disabled_holo_dark);
num=position;
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
intiData();
}
//无线轮播
private void intiView() {
new Thread(){
@Override
public void run() {
super.run();
while (true){
SystemClock.sleep(3000);
time++;
handler.sendEmptyMessage(0);
}
}
}.start();
}
private void initData() {
imUrl = new ArrayList<>();
imUrl.add("http://f2.kkmh.com/image/160511/chrrrrs4v.webp-w750.jpg");
imUrl.add("http://f2.kkmh.com/image/170104/gio7ngxkf.webp-w750.jpg");
imUrl.add("http://f2.kkmh.com/image/160222/03wkn35ez.webp-w750.jpg");
list = new ArrayList<>();
for (int i = 0; i <imUrl.size() ; i++) {
View view = new View(getActivity());
view.setLayoutParams(new LinearLayout.LayoutParams(50,50));
list.add(view);
if (i==0){
list.get(i).setBackgroundResource(R.mipmap.btn_radio_on_holo_dark);
}else {
list.get(i).setBackgroundResource(R.mipmap.btn_radio_on_disabled_holo_dark);
}
ll.addView(list.get(i));
}
}
class Mydata 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) {
final ImageView imageView = new ImageView(getActivity());
new ImageLoder(new ImageLoder.ImageBall() {
@Override
public void callBitmap(Bitmap bitmap) {
if(bitmap!=null)
{
imageView.setImageBitmap(bitmap);
}
}
}).execute(imUrl.get(position % imUrl.size()));
container.addView(imageView);
return imageView;
}
}
public void intiData(){
text_view = (TextView) getView().findViewById(R.id.text_view);
ed_name = (EditText) getView().findViewById(R.id.ed_name);
getView().findViewById(R.id.button).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.button:
String name = ed_name.getText().toString().trim();
if (!TextUtils.isEmpty(name)){
try {
getTianQi(name);
} catch (Exception e) {
e.printStackTrace();
}
}else {
Toast.makeText(getActivity(),"城市名不能为空",Toast.LENGTH_LONG).show();
}
break;
}
}
});
}
public void getTianQi(String Name) throws Exception{
new Thread(){
@Override
public void run() {
super.run();
try {
String service_url = "http://ws.webxml.com.cn/WebServices/WeatherWS.asmx";
//namepace
String name_space = "http://WebXml.com.cn/";
//具体请求的服务
String method_name = "getWeather";
HttpTransportSE httpTransportSE = new HttpTransportSE(service_url);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
SoapObject soapObject = new SoapObject(name_space, method_name);
soapObject.addProperty("theCityCode","北京");
soapObject.addProperty("theUserID","5071be049c5241ad8583050460fc1fac");
envelope.bodyOut=soapObject;
envelope.dotNet=true;
httpTransportSE.call(name_space+method_name,envelope);
StringBuffer sb=new StringBuffer();
if (envelope.getResponse()!=null){
SoapObject result= (SoapObject) envelope.bodyIn;
SoapObject su= (SoapObject) result.getProperty("getWeatherResult");
sb.append("今日天气状况 : "+su.getProperty(4)+"\r\n" +
"当前城市 : "+su.getProperty(1));
Message message = handler.obtainMessage();
message.what=1;
message.obj = sb.toString();
handler.sendMessage(message);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}.start();
}
}
查询城市名称
最新推荐文章于 2019-08-14 14:51:42 发布