美文网首页
Android百度地图之页面跳转

Android百度地图之页面跳转

作者: 史慧君 | 来源:发表于2016-12-20 00:33 被阅读142次

    下面的一个例子是通过一个button跳转到百度地图的界面,全部通过android原生来实现!

    百度地图之页面跳转

    1.在预跳转Activity类中添加下面的设定:

    需要在类的最上面添加定义:
    private Button baidu_map;

    在initViews方法中添加监听器:
    baidu_map = getView(R.id.baidu_map); baidu_map.setOnClickListener(this);
    在第一个页面中的onClick方法中 添加case情况:
    case R.id.baidu_map: startAnimActivity(LeaderScheduleTestMapActivity.class); break;

    2. 在LeaderScheduleTestMapActivity.java文件中写相应的代码:

    `setContentView(R.layout.test_layout);`
    

    3. 在test_layout.xml文件中添加下面的代码:

    由于代码中引用了返回功能,需要在xml文件中引入common_title_header:
    <include layout="@layout/common_title_header"/>
    <com.baidu.mapapi.map.MapView android:id="@+id/bmapView" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true" />

    4. 注册监听:在AndroidManifest.xml中注册:

    <activity android:name=".leader.schedule.activity.LeaderScheduleTestMapActivity" android:screenOrientation="portrait" />

    ------------------完整代码如下--------------:

    1. 预跳转页面MainActivity.java

    public class MainActivity extends BaseActivity implements View.OnClickListener{ private RecyclerView mVoiceRecylerView; private Button baidu_map;

    @Override
    public void doCallback(String eventId, String jsonData) {
    super.doCallback(eventId, jsonData);
    }@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.leader_schedule_customer_voice_activity); initTitle(getString(R.string.leader_schedule_contact_history_title_customer_voice)); initViews(); } private void initViews() {
    findViewById(R.id.leader_schedule_contact_history_voice_rv);
    baidu_map = getView(R.id.baidu_map);
    baidu_map.setOnClickListener(this);
    btn_back.setVisibility(View.VISIBLE);
    btn_back.setOnClickListener(this);
    }
    @Override
    public void onClick(View view) {
    switch (view.getId()) {
    case R.id.btn_back:
    onBackPressed();
    break;
    case R.id.baidu_map:
    startAnimActivity(LeaderScheduleTestMapActivity.class);
    break;
    }
    }
    }`

    1. 跳转到页面 MainActivity2.java

    `
    public class MainActivity2 extends BaseActivity implements View.OnClickListener{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.test_layout);
        initTitle("测试百度地图");
        initViews();
    }
    
    private void initViews() {
    

    // mVoiceRecylerView = (RecyclerView) findViewById(R.id.leader_schedule_contact_history_voice_rv);
    // TextView textView = (TextView)findViewById(R.id.text1);
    // textView.setText("abc");
    btn_back.setVisibility(View.VISIBLE);
    btn_back.setOnClickListener(this);

    }
    
    
    @Override
    public void onClick(View view) {
        switch (view.getId()) {
            case R.id.btn_back:
                onBackPressed();
                break;
        }
    }
    

    }
    `

    1. test_layout.xml文件代码:

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <include layout="@layout/common_title_header"/> <com.baidu.mapapi.map.MapView android:id="@+id/bmapView" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true" /> </LinearLayout>

    注意点和经验分析:

    1. 所写的java类一定要注册监听:在AndroidManifest.xml中注册: 否者会无响应报错

      <activity
      android:name=".leader.schedule.activity.LeaderScheduleTestMapActivity"
      android:screenOrientation="portrait" />

    2. 如果页面有引用其他的layout,一定要引入进来。否者运行的时候,会报空指针异常。
      <include layout="@layout/common_title_header"/>

    3. 如果看错误信息,在最下面中的Android Monitor中进行查看,如果是报错,请直接调控级别为Error,便于查看错误信息。

    4. 如果看Android Studio的版本信息,可以点击项目app - Show history即可看到历史信息。

    相关文章

      网友评论

          本文标题:Android百度地图之页面跳转

          本文链接:https://www.haomeiwen.com/subject/vxrxvttx.html