实训2

来源:互联网 发布:西班牙语扫描翻译软件 编辑:程序博客网 时间:2024/06/08 03:49
package com.example.yuekao2;import java.net.MalformedURLException;import java.net.URL;import java.util.List;import com.baidu.location.LocationClient;import com.baidu.location.LocationClientOption;import com.handmark.pulltorefresh.library.PullToRefreshListView;import com.pan.util.ListAd;import com.pan.vo.ItemObj;import com.pan.vo.Obj;import com.thoughtworks.xstream.XStream;import android.support.v7.app.ActionBarActivity;import android.content.Intent;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.view.View.OnClickListener;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;import android.widget.ArrayAdapter;import android.widget.Button;import android.widget.TextView;import com.baidu.location.LocationClientOption.LocationMode;public class MainActivity extends ActionBarActivity {private PullToRefreshListView lv;private List<ItemObj> list2;private LocationClient mLocationClient;//定位SDK的核心类    private TextView LocationResult;    private Button startLocation;        Handler hand=new Handler(){public void handleMessage(android.os.Message msg) {list2=(List<ItemObj>) msg.obj;lv.setAdapter(new ListAd(MainActivity.this, list2));lv.setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> parent, View view,int position, long id) {// TODO Auto-generated method stubIntent in=new Intent(MainActivity.this, TwoAc.class);startActivity(in);}});};};    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);                                        startLocation=(Button) findViewById(R.id.button1);        mLocationClient = ((LocationApplication)getApplication()).mLocationClient;                LocationResult = (TextView)findViewById(R.id.tt);         ((LocationApplication)getApplication()).mLocationResult = LocationResult;//调用LocationApplication,获得需要的信息        startLocation.setOnClickListener(new OnClickListener() {                         public void onClick(View v) {                InitLocation();                if(startLocation.getText().equals("开启定位")){                    mLocationClient.start();                    startLocation.setText("停止定位");                }else{                    mLocationClient.stop();                    startLocation.setText("开启定位");                }            }        });                                                                                initView();        logicCode();    }private void logicCode() {// TODO Auto-generated method stubgetJson();}private void getJson() {// TODO Auto-generated method stubnew Thread(new Runnable() {@Overridepublic void run() {XStream xs=new XStream();xs.processAnnotations(Obj.class);                try {Obj obj=(Obj) xs.fromXML(new URL("http://apis.juhe.cn/goodbook/catalog?key=9d6ef8c31647a206e05fcaff70527182&dtype=xml"));List<ItemObj> list1=obj.getResult().getItem();Message msg=Message.obtain();msg.obj=list1;hand.sendMessage(msg);                } catch (MalformedURLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}).start();}private void initView() {lv=(PullToRefreshListView) findViewById(R.id.lv);}@Override    protected void onStop() {        mLocationClient.stop();        super.onStop();    }     private void InitLocation(){        LocationClientOption option = new LocationClientOption();        option.setLocationMode(LocationMode.Hight_Accuracy);//设置高精度定位定位模式        option.setCoorType("bd09ll");//设置百度经纬度坐标系格式        option.setScanSpan(1000);//设置发起定位请求的间隔时间为1000ms        option.setIsNeedAddress(true);//反编译获得具体位置,只有网络定位才可以        mLocationClient.setLocOption(option);    }}

0 0