導航:首頁 > 操作系統 > android省份城市

android省份城市

發布時間:2023-05-30 12:55:17

android 版百度地圖如何通過定位功能獲得當前的位置所在的城市

網路地圖是通過移動通信基站定位來確定當前位置所在的城市。其原理就是通過測算周圍基站與手機的距離來交會估算手機的空間位置。
手機定位是指通過特定的定位技術來獲取移動手機或終端用戶的位置信息(經緯度坐標),在電子地圖上標出被定位對象的位置的技術或服務。定位技術有兩種,一種是基於GPS的定位,一種是基於移動運營網的基站的定位。基於GPS的定位方式是利用手機上的GPS定位模塊將自己的位置信號發送到定位後台來實現手機定位的。基站定位則是利用基站對手機的距離的測算距離來確定手機位置的。後者不需要手機具有GPS定位能力,但是精度很大程度依賴於基站的分布及覆蓋范圍的大小,有時誤差會超過一公里。前者定位精度較高。此外還有利用Wifi在小范圍內定位的方式。

❷ android如何獲取地理位置

三種方式進行定位,獲取用戶位置,分別是基於基站定位, 網路定位,GPS定位。
1.基站定位(passive):這是基於網路基站進行定位的,定位的精確度在幾十米到幾千米不等,在城市中基站覆蓋率比較高,推薦使用基站定位,如果是在郊區,基站相距較遠,基站的覆蓋沒有城裡好,定位的誤差比較大。如果在郊區不推薦使用基站定位。
2.網路定位:wifi定位,網路定位
3.GPS定位:與衛星進行通信。手機中嵌入了GPS模塊(精簡版的A-GPS),通過A-GPS搜索衛星, 獲取經緯度。使用GPS的弊端是:必須站在空曠的地方,頭頂對著天空,如果雲層厚了,也會受到一定的影響。精確度:10-50米
擴展知識:
使用Android是定位必備的許可權:
< uses-permission android:name= " android.permission.ACCESS_FINE_LOCATION " /> //精確定位
<uses-permission android:name= "android.permission.ACCESS_MOCK_LOCATION" /> //模擬器
<uses-permission android:name= "android.permission.ACCESS_COARSE_LOCATION" /> //粗糙定位

//獲取定位管理對象
LocationManager lm=(LocationManager)getSystemService(LOCATION_SERVICE);
String[] names=lm.getAllProviders();//獲取所有的位置提供者,一般三種

Criteria criteria=new Criteria();//查詢條件,如果設置了海拔,則定位方式只能是GPS;
criteria.setCostAllowed(true);//是否產生開銷,比如流量費
String provider=lm.getBaseProvider(criteria,true)//獲取最好的位置提供者,第二個參數為true,表示只獲取那些被打開的位置提供者

lm.requestLocationUpdates(provier,0,0,new LocationListener(){});//獲取位置。第二個參數表示每隔多少時間返回一次數據,第三個參數表示被定位的物體移動每次多少米返回一次數據。

private class MyLocationListener implements LocationListener {
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {

}

@Override
public void onProviderEnabled(String provider) {

}

@Override

@Override
public void onLocationChanged(Location location) {
System. out.println( "服務中位置監聽發送了變化了" );
float accuracy = location.getAccuracy(); // 精確度
double altitude = location.getAltitude(); // 海拔
double latitude = location.getLatitude(); // 緯度
double longitude = location.getLongitude(); // 經度
String locationInfo = "jing:" + longitude + ",wei:" + latitude + ",haiba:" + altitude + ",jingque:" + accuracy;
Editor edit = sp.edit();
edit.putString( "location", locationInfo);
edit.commit();
}
} public void onProviderDisabled(String provider) {

}

❸ Android 自定義仿京東地址選擇器

public class AddressPickerViewextends RelativeLayout{

// recyclerView 選中Item 的顏色

    private int defaultSelectedColor = Color.parseColor("#3D71FF");

    // recyclerView 未選中Item 的顏色

    private int defaultUnSelectedColor = Color.parseColor("#2c2c2c");

    // 確定字體不可以點擊時候的顏色

    private int defaultSureUnClickColor = Color.parseColor("#7F7F7F");

    // 確定字體可以點擊時候的顏色

    private int defaultSureCanClickColor = Color.parseColor("#3D71FF");

    private ContextmContext;

    private int defaultTabCount =3; //tab 的數量

    private TabLayoutmTabLayout; // tabLayout

    private RecyclerViewmRvList; // 顯示數據的RecyclerView

    private StringdefaultProvince ="省份"; //顯示在上面tab中的省份

    private StringdefaultCity ="城市"; //顯示在上面tab中的城市

    private StringdefaultDistrict ="區縣"; //顯示在上面tab中的區縣

    private ListmRvData; // 用來在recyclerview顯示的數據

    private AddressAdaptermAdapter;  // recyclerview 的adapter

    private YwpAddressBeanmYwpAddressBean; // 總數據

    private YwpAddressBean.AddressItemBeanmSelectProvice; //選中 省份bean

    private YwpAddressBean.AddressItemBeanmSelectCity;//選中 城市bean

    private YwpAddressBean.;//選中 區縣bean

    private int mSelectProvicePosition =0; //選中 省份 位置

    private int mSelectCityPosition =0;//選中 城市  位置

    private int mSelectDistrictPosition =0;//選中 區縣  位置

    private ;

    public AddressPickerView(Context context) {

super(context);

        init(context);

    }

public AddressPickerView(Context context, @Nullable AttributeSet attrs) {

super(context, attrs);

        init(context);

    }

public AddressPickerView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {

super(context, attrs, defStyleAttr);

        init(context);

    }

/**

    * 初始化

    */

    private void init(Context context) {

mContext = context;

        mRvData =new ArrayList<>();

        // UI

        View rootView =inflate(mContext, R.layout.address_picker_view, this);

        // tablayout初始化

        mTabLayout = (TabLayout) rootView.findViewById(R.id.tlTabLayout);

        mTabLayout.addTab(mTabLayout.newTab().setText(defaultProvince));

        mTabLayout.addTab(mTabLayout.newTab().setText(defaultCity));

        mTabLayout.addTab(mTabLayout.newTab().setText(defaultDistrict));

        mTabLayout.addOnTabSelectedListener(tabSelectedListener);

        // recyclerview adapter的綁定

        mRvList = (RecyclerView) rootView.findViewById(R.id.rvList);

        mRvList.setLayoutManager(new LinearLayoutManager(context));

        mAdapter =new AddressAdapter();

        mRvList.setAdapter(mAdapter);

        // 初始化默認的本地數據  也提供了方法接收外面數據

        mRvList.post(new Runnable() {

@Override

            public void run() {

initData();

            }

});

    }

/**

    * 初始化數據

    * 拿assets下的json文件

    */

    private void initData() {

StringBuilder jsonSB =new StringBuilder();

        try {

BufferedReader addressJsonStream =new BufferedReader(new InputStreamReader(mContext.getAssets().open("address.json")));

            String line;

            while ((line = addressJsonStream.readLine()) !=null) {

jsonSB.append(line);

            }

}catch (IOException e) {

e.printStackTrace();

        }

// 將數據轉換為對象

        mYwpAddressBean =new Gson().fromJson(jsonSB.toString(), YwpAddressBean.class);

        if (mYwpAddressBean !=null) {

mRvData.clear();

            mRvData.addAll(mYwpAddressBean.getProvince());

            mAdapter.notifyDataSetChanged();

        }

}

/**

    * 開放給外部傳入數據

    * 暫時就用這個Bean模型,如果數據不一致就需要各自根據數據來生成這個bean了

    */

    public void initData(YwpAddressBean bean) {

if (bean !=null) {

mSelectDistrict =null;

            mSelectCity =null;

            mSelectProvice =null;

            mTabLayout.getTabAt(0).select();

            mYwpAddressBean = bean;

            mRvData.clear();

            mRvData.addAll(mYwpAddressBean.getProvince());

            mAdapter.notifyDataSetChanged();

        }

}

//點確定

    private void sure() {

if (mSelectProvice !=null &&

mSelectCity !=null &&

mSelectDistrict !=null) {

//  回調介面

            if (mOnAddressPickerSureListener !=null) {

mOnAddressPickerSureListener.onSureClick(mSelectProvice.getN(), mSelectCity.getN(), mSelectDistrict.getN());

            }

}else {

Toast.makeText(mContext, "地址還沒有選完整哦", Toast.LENGTH_SHORT).show();

        }

}

@Override

    protected void onDetachedFromWindow() {

super.onDetachedFromWindow();

      // mYwpAddressBean = null;

    }

/**

    * TabLayout 切換事件

    */

    TabLayout. =new TabLayout.OnTabSelectedListener() {

@Override

        public void onTabSelected(TabLayout.Tab tab) {

mRvData.clear();

            switch (tab.getPosition()) {

case 0:

mRvData.addAll(mYwpAddressBean.getProvince());

                    mAdapter.notifyDataSetChanged();

                    // 滾動到這個位置

                    mRvList.smoothScrollToPosition(mSelectProvicePosition);

break;

                case 1:

// 點到城市的時候要判斷有沒有選擇省份

                    if (mSelectProvice !=null) {

for (YwpAddressBean.AddressItemBean itemBean :mYwpAddressBean.getCity()) {

if (itemBean.getP().equals(mSelectProvice.getI()))

mRvData.add(itemBean);

                        }

}else {

Toast.makeText(mContext, "請您先選擇省份", Toast.LENGTH_SHORT).show();

                    }

mAdapter.notifyDataSetChanged();

                    // 滾動到這個位置

                    mRvList.smoothScrollToPosition(mSelectCityPosition);

break;

                case 2:

// 點到區的時候要判斷有沒有選擇省份與城市

                    if (mSelectProvice !=null &&mSelectCity !=null) {

for (YwpAddressBean.AddressItemBean itemBean :mYwpAddressBean.getDistrict()) {

if (itemBean.getP().equals(mSelectCity.getI()))

mRvData.add(itemBean);

                        }

}else {

Toast.makeText(mContext, "請您先選擇省份與城市", Toast.LENGTH_SHORT).show();

                    }

mAdapter.notifyDataSetChanged();

                    // 滾動到這個位置

                    mRvList.smoothScrollToPosition(mSelectDistrictPosition);

break;

            }

}

@Override

        public void onTabUnselected(TabLayout.Tab tab) {

}

@Override

        public void onTabReselected(TabLayout.Tab tab) {

}

};

    /**

    * 下面顯示數據的adapter

*/

    class AddressAdapterextends RecyclerView.Adapter {

@Override

        public ViewHolderonCreateViewHolder(ViewGroup parent, int viewType) {

return new ViewHolder(LayoutInflater.from(mContext).inflate(R.layout.item_address_text, parent, false));

        }

@Override

        public void onBindViewHolder(final ViewHolder holder, final int position) {

final int tabSelectPosition =mTabLayout.getSelectedTabPosition();

            holder.mTitle.setText(mRvData.get(position).getN());

            holder.mTitle.setTextColor(defaultUnSelectedColor);

            // 設置選中效果的顏色

            switch (tabSelectPosition) {

case 0:

if (mRvData.get(position) !=null &&

mSelectProvice !=null &&

mRvData.get(position).getI().equals(mSelectProvice.getI())) {

holder.mTitle.setTextColor(defaultSelectedColor);

                    }

break;

                case 1:

if (mRvData.get(position) !=null &&

mSelectCity !=null &&

mRvData.get(position).getI().equals(mSelectCity.getI())) {

holder.mTitle.setTextColor(defaultSelectedColor);

                    }

break;

                case 2:

if (mRvData.get(position) !=null &&

mSelectDistrict !=null &&

mRvData.get(position).getI().equals(mSelectDistrict.getI())) {

holder.mTitle.setTextColor(defaultSelectedColor);

                    }

break;

            }

// 設置點擊之後的事件

            holder.mTitle.setOnClickListener(new OnClickListener() {

@Override

                public void onClick(View v) {

// 點擊 分類別

                    switch (tabSelectPosition) {

case 0:

mSelectProvice =mRvData.get(position);

                            // 清空後面兩個的數據

                            mSelectCity =null;

                            mSelectDistrict =null;

                            mSelectCityPosition =0;

                            mSelectDistrictPosition =0;

                            mTabLayout.getTabAt(1).setText(defaultCity);

                            mTabLayout.getTabAt(2).setText(defaultDistrict);

                            // 設置這個對應的標題

                            mTabLayout.getTabAt(0).setText(mSelectProvice.getN());

                            // 跳到下一個選擇

                            mTabLayout.getTabAt(1).select();

                            mSelectProvicePosition =position;

break;

                        case 1:

mSelectCity =mRvData.get(position);

                            // 清空後面一個的數據

                            mSelectDistrict =null;

                            mSelectDistrictPosition =0;

                            mTabLayout.getTabAt(2).setText(defaultDistrict);

                            // 設置這個對應的標題

                            mTabLayout.getTabAt(1).setText(mSelectCity.getN());

                            // 跳到下一個選擇

                            mTabLayout.getTabAt(2).select();

                            mSelectCityPosition =position;

break;

                        case 2:

mSelectDistrict =mRvData.get(position);

                            // 沒了,選完了,這個時候可以點確定了

                            mTabLayout.getTabAt(2).setText(mSelectDistrict.getN());

                            notifyDataSetChanged();

                            mSelectDistrictPosition =position;

                            sure();

break;

                    }

}

});

        }

@Override

        public int getItemCount() {

return mRvData.size();

        }

class ViewHolderextends RecyclerView.ViewHolder {

TextViewmTitle;

            ViewHolder(View itemView) {

super(itemView);

                mTitle = (TextView) itemView.findViewById(R.id.itemTvTitle);

            }

}

}

/**

    * 點確定回調這個介面

    */

    public interface OnAddressPickerSureListener {

void onSureClick(String proviceName,String cityName,String earaName);

    }

public void setOnAddressPickerSure(OnAddressPickerSureListener listener) {

this.mOnAddressPickerSureListener = listener;

    }

❹ 百度地圖android開發中,類MKOfflineMap的方法getOfflineCityList()獲取城市列表

從省到到市,從市取到區,android上好像沒有對應的API,不過可以通過javascript的介面來實現,具體說明如下:

  1. 省不用說了,不需要介面都可以取得到列表。

  2. 市的話要根據省來取,具體如下:

用android的HttpGet等方法(聯網的方法網上都有),訪問下面的介面:

http://map..com/?qt=sub_area_list&areacode=15&level=1&from=mapapi

(其中最重要的參數就是areacode,下面有介紹,這里15就代表是湖北省)

這樣就得到一個省對應的市的相關JSON數據,如:

{"content":{"area_code":15,"area_name":"湖北省","area_type":1,"geo":"1|12513622.70,3637618.8312513622.70,3637618.83|12513622.70,3637618.83","sub":[{"area_code":122,"area_name":"鄂州市","area_type":2,"geo":"1|12790258.19,3531251.9912790258.19,3531251.99|12790258.19,3531251.99"},{"area_code":156,"area_name":"襄樊市","area_type":2,"geo":"1|12487547.34,3752866.8112487547.34,3752866.81|12487547.34,3752866.81"},{"area_code":157,"area_name":"荊州市","area_type":2,"geo":"1|12494843.30,3524596.7112494843.30,3524596.71|12494843.30,3524596.71"},{"area_code":216,"area_name":"十堰市","area_type":2,"geo":"1|12334470.59,3823962.8912334470.59,3823962.89|12334470.59,3823962.89"},{"area_code":217,"area_name":"荊門市","area_type":2,"geo":"1|12492111.99,3616047.7912492111.99,3616047.79|12492111.99,3616047.79"},{"area_code":218,"area_name":"武漢市","area_type":2,"geo":"1|12725759.65,3556525.7012725759.65,3556525.70|12725759.65,3556525.70"},{"area_code":270,"area_name":"宜昌市","area_type":2,"geo":"1|12391216.56,3576054.8912391216.56,3576054.89|12391216.56,3576054.89"},{"area_code":271,"area_name":"黃岡市","area_type":2,"geo":"1|12791485.39,3539172.5112791485.39,3539172.51|12791485.39,3539172.51"},{"area_code":310,"area_name":"孝感市","area_type":2,"geo":"1|12683405.94,3601233.8012683405.94,3601233.80|12683405.94,3601233.80"},{"area_code":311,"area_name":"黃石市","area_type":2,"geo":"1|12807522.82,3509660.5012807522.82,3509660.50|12807522.82,3509660.50"},{"area_code":362,"area_name":"咸寧市","area_type":2,"geo":"1|12723962.99,3466736.4612723962.99,3466736.46|12723962.99,3466736.46"},{"area_code":371,"area_name":"隨州市","area_type":2,"geo":"1|12621469.77,3703661.0912621469.77,3703661.09|12621469.77,3703661.09"},{"area_code":373,"area_name":"恩施土家族苗族自治州","area_type":2,"geo":"1|12188717.77,3518605.0912188717.77,3518605.09|12188717.77,3518605.09"},{"area_code":1293,"area_name":"潛江市","area_type":2,"geo":"1|12553498.42,3525947.4312553498.42,3525947.43|12553498.42,3525947.43"},{"area_code":1713,"area_name":"仙桃市","area_type":2,"geo":"1|12622370.33,3519641.2012622370.33,3519641.20|12622370.33,3519641.20"},{"area_code":2654,"area_name":"天門市","area_type":2,"geo":"1|12593291.39,3565272.6712593291.39,3565272.67|12593291.39,3565272.67"},{"area_code":2734,"area_name":"神農架林區","area_type":2,"geo":"1|12299516.08,3687772.6212299516.08,3687772.62|12299516.08,3687772.62"}]},"result":{"error":0}}


解析這個JSON就能得到這個省下麵包含的市。


3.區的話,要通過市獲取,具體調用的方法跟取市的介面一樣,只是傳入的areacode不一樣就可以了。(傳城市的areacode就可以得到區)


areacode是網路地圖對應的城市代碼,在網路地圖的開發網站上能找到,如果找不下,看下面的也可以:

mcid如下:areaUID=

中國|1

安徽|23

福建|16

甘肅|6

廣東|7

廣西|17

貴州|24

海南|21

河北|25

黑龍江|2

河南|30

湖北|15

湖南|26

江蘇|18

江西|31

吉林省|9

遼寧|19

內蒙古|22

寧夏|20

青海|11

山東|8

山西|10

陝西|27

四川|32

新疆|12

西藏|13

雲南|28

浙江|29

北京|131

天津|332

石家莊|150

唐山|265

秦皇島|148

邯鄲|151

邢台|266

保定|307

張家口|264

承德|207

滄州|149

廊坊|191

衡水|208

太原|176

大同|355

陽泉|357

長治|356

晉城|290

朔州|237

晉中|238

運城|328

忻州|367

臨汾|368

呂梁|327

呼和浩特|321

包頭|229

烏海|123

赤峰|297

通遼|64

鄂爾多斯|283

呼倫貝爾|61

巴彥淖爾|169

烏蘭察布|168

興安盟|62

錫林郭勒盟|63

阿拉善盟|230

沈陽|58

大連|167

鞍山|320

撫順|184

本溪|227

丹東|282

錦州|166

營口|281

阜新|59

遼陽|351

盤錦|228

鐵嶺|60

朝陽|280

葫蘆島|319

長春|53

吉林市|55

四平|56

遼源|183

通化|165

白山|57

松原|52

白城|51

延邊朝鮮族自治州|54

哈爾濱|48

齊齊哈爾|41

雞西|46

鶴崗|43

雙鴨山|45

大慶|50

伊春|40

佳木斯|42

七台河|47

牡丹江|49

黑河|39

綏化|44

大興安嶺地區|38

上海|289

南京|315

無錫|317

徐州|316

常州|348

蘇州|224

南通|161

連雲港|347

淮安|162

鹽城|223

揚州|346

鎮江|160

泰州|276

宿遷|277

杭州|179

寧波|180

溫州|178

嘉興|334

湖州|294

紹興|293

金華|333

衢州|243

舟山|245

台州|244

麗水|292

合肥|127

蕪湖|129

蚌埠|126

淮南|250

馬鞍山|358

淮北|253

銅陵|337

安慶|130

黃山|252

滁州|189

阜陽|128

宿州|370

巢湖|251

六安|298

亳州|188

池州|299

宣城|190

福州|300

廈門|194

莆田|195

三明|254

泉州|134

漳州|255

南平|133

龍岩|193

寧德|192

南昌|163

景德鎮|225

萍鄉|350

九江|349

新余|164

鷹潭|279

贛州|365

吉安|318

宜春|278

撫州|226

上饒|364

濟南|288

青島|236

淄博|354

棗庄|172

東營|174

煙台|326

濰坊|287

濟寧|286

泰安|325

威海|175

日照|173

萊蕪|124

臨沂|234

德州|372

聊城|366

濱州|235

菏澤|353

鄭州|268

開封|210

洛陽|153

平頂山|213

安陽|267

鶴壁|215

新鄉|152

焦作|211

濮陽|209

許昌|155

漯河|344

三門峽|212

南陽|309

商丘|154

信陽|214

周口|308

駐馬店|269

武漢|218

黃石|311

十堰|216

宜昌|270

襄樊|156

鄂州|122

荊門|217

孝感|310

荊州|157

黃岡|271

咸寧|362

隨州|371

恩施土家族苗族自治州|373

仙桃|1713

潛江|1293

天門|2654

神農架林區|2734

長沙|158

株洲|222

湘潭|313

衡陽|159

邵陽|273

岳陽|220

常德|219

張家界|312

益陽|272

郴州|275

永州|314

懷化|363

婁底|221

湘西土家族苗族自治州|274

廣州|257

韶關|137

深圳|340

珠海|140

汕頭|303

佛山|138

江門|302

湛江|198

茂名|139

肇慶|338

惠州|301

梅州|141

汕尾|339

河源|200

陽江|199

清遠|197

東莞|119

中山|187

潮州|201

揭陽|259

雲浮|258

南寧|261

柳州|305

桂林|142

梧州|304

北海|295

防城港|204

欽州|145

貴港|341

玉林|361

百色|203

賀州|260

河池|143

來賓|202

崇左|144

海口|125

三亞|121

五指山|1644

瓊海|2358

儋州|1215

文昌|2758

萬寧|1216

東方|2634

定安|1214

屯昌|1641

澄邁|2757

臨高|2033

白沙黎族自治|2359

昌江黎族自治|1642

樂東黎族自治|2032

陵水黎族自治|1643

保亭黎族苗族自治|1217

瓊中黎族苗族自治|2031

重慶|132

成都|75

自貢|78

攀枝花|81

瀘州|331

德陽|74

綿陽|240

廣元|329

遂寧|330

內江|248

樂山|79

南充|291

眉山|77

宜賓|186

廣安|241

達州|369

雅安|76

巴中|239

資陽|242

阿壩藏族羌族自治州|185

甘孜藏族自治州|73

涼山彝族自治州|80

貴陽|146

六盤水|147

遵義|262

安順|263

銅仁地區|205

黔西南布依族苗族自治州|343

畢節地區|206

黔東南苗族侗族自治州|342

黔南布依族苗族自治州|306

昆明|104

曲靖|249

玉溪|106

保山|112

昭通|336

麗江|114

臨滄|110

楚雄彝族自治州|105

紅河哈尼族彝族自治州|107

文山壯族苗族自治州|177

普洱|108

西雙版納傣族自治州|109

大理白族自治州|111

德宏傣族景頗族自治州|116

怒江傈僳族自治州|113

迪慶藏族自治州|115

拉薩|100

昌都地區|99

山南地區|97

日喀則地區|102

那曲地區|101

阿里地區|103

林芝地區|98

西安|233

銅川|232

寶雞|171

咸陽|323

渭南|170

延安|284

漢中|352

榆林|231

安康|324

商洛|285

蘭州|36

嘉峪關|33

金昌|34

白銀|35

天水|196

武威|118

張掖|117

平涼|359

酒泉|37

慶陽|135

定西|136

隴南|256

臨夏回族自治州|182

甘南藏族自治州|247

西寧|66

海東地區|69

海北藏族自治州|67

黃南藏族自治州|70

海南藏族自治州|68

果洛藏族自治州|72

玉樹藏族自治州|71

海西蒙古族藏族自治州|65

銀川|360

石嘴山|335

吳忠|322

固原|246

中衛|181

烏魯木齊|92

克拉瑪依|95

吐魯番地區|89

哈密地區|91

昌吉回族自治州|93

博爾塔拉蒙古自治州|88

巴音郭楞蒙古自治州|86

阿克蘇地區|85

克孜勒蘇柯爾克孜自治州|84

喀什地區|83

和田地區|82

伊犁哈薩克自治州|90

塔城地區|94

阿勒泰地區|96

石河子|770

阿拉爾|731

圖木舒克|792

五家渠|789

香港特別行政區|2912

澳門特別行政區|2911

❺ android百度地圖api 怎麼知道該搜索哪個城市

在onLocationChanged方法里獲得自己當前的坐標
然後方法里寫 mSearch.reverseGeocode(new GeoPoint((int)(location.getLatitude()*1e6),(int)(location.getLongitude()*1e6)));
然後再通過代碼實行這個方法功能
public class MySearchListener implements MKSearchListener {
public void onGetAddrResult(MKAddrInfo result, int error){
MKGeocoderAddressComponent kk=result.addressComponents;
String city=kk.city;


❻ android 如何實現 省份,城市級聯菜單

Android實現省份城市級聯菜單的方法:
1、下載的資料庫 db_weather.db 放到sdcard/weather 目錄下面 方便後續操作
2、使用 SQLite Database Browser 可以打開資料庫 查看數據 和表等信息
3、了解了表的構成可以實現操作了androidManifest.xml配置文件聲明 添加操作sdcard 許可權
4、布局文件main.xml主要使用兩個 spinner 分別實現城市 省份的選擇

❼ android 如何輸入首字母進行地址城市模糊檢索

Android中ListView的A-Z字母排序和過濾搜索功能並且實現漢字轉成拼音的功能,一般對聯系人,城市列表等實現A-Z的排序,因為聯系人和城市列表可以直接從資料庫中獲取它的漢字拼音,而對於一般的數據,實現A-Z的排序,基實只需要將漢字轉換成拼音就行了。

以下為步驟:

  1. SortModel 一個實體類,裡面一個是ListView的name,另一個就是顯示的name拼音的首字母。


2.SideBar類就是ListView右側的字母索引View,需要使用setTextView(TextView mTextDialog)來設置用來顯示當前按下的字母的TextView,以及使用方法來設置回調介面,在回調方法onTouchingLetterChanged(String s)中來處理不同的操作。



3.CharacterParser這個類是將漢字轉換成拼音的類,該拼音沒有聲調的,該類是單例類,其中定義了三個方法,在這個demo中用到的是getSelling(String chs)方法,將片語轉換成拼音。



4.ClearEditText類是自定義的一個在右側有刪除圖片的EditText,當然也可以用Android原生的EditText,這里就不貼上代碼了Android 帶清除功能的輸入框控制項ClearEditText,仿IOS的輸入框。


5.SortAdapter 數據的適配器類,該類需要實現SectionIndexer介面,該介面是用來控制ListView分組的。


6.最後運行效果

❽ android開發省市區城市選擇器怎麼實現

發現一個好用的省市區城市選擇器,感覺挺好用的。

實現好的省市縣區選擇器,可以用來參考設計,用網頁語言做的,可以在android環境中使用。

閱讀全文

與android省份城市相關的資料

熱點內容
linux內存子系統 瀏覽:968
加密思維幣 瀏覽:688
魅族訪客文件夾 瀏覽:50
添加的文件夾怎麼找 瀏覽:615
程序員涉黃 瀏覽:698
maven編譯resources下的js 瀏覽:519
ubuntu文件移動命令 瀏覽:227
安卓i怎麼查找蘋果手機 瀏覽:949
雲伺服器宕機概率 瀏覽:231
在線買葯用什麼app知乎 瀏覽:813
ubuntu解壓xz文件 瀏覽:674
宏傑加密時電腦關機 瀏覽:388
自己寫單片機編譯器 瀏覽:599
單片機按鍵閃爍 瀏覽:380
為什麼icloud總是顯連接伺服器失敗 瀏覽:890
如何設置域控伺服器 瀏覽:740
想在上海租房子什麼app好 瀏覽:186
編譯程序各部分是必不可少的嗎 瀏覽:887
編程不超過十行 瀏覽:765
數電編譯器的作用 瀏覽:339