[android] 显示意图激活另外一个activity

可下跳转的主意接近javaweb来实现界面转换

来得意图就是要要指定开启组件的现实性信息,包名,组件名,组件的class

 

新建一个类TwoActivity ,继承Activity类,重写onCreate()方法,这个点子是界面被的时自动调用,在此函数里面大部分展开初始化的操作,比如调用界面与沾控件等

 

activtity是系统的首要器件,系统设想找到这activity,就得在清单文件里进行布局

新加<Activity />节点,

安装名称android:name=”包名.类名”

安意图过滤器 <intent-filter> action的号是android.intent.action.MAIN ;category的名称是android.intent.category.LAUNCHER的时节会创快捷图标

安图标 android:icon=””

装标题 android:label=””

android系统里面有部分实在是一个运,创建了不同的图标进入不同之界面。

 

在率先独Activity里面点击按钮跳反过来

获取Intent对象,通过new出来

调用Intent对象的setClassName(packageContext,className)方法,设置类名,参数:上下文,String类型的类名 全名称含包名

调用Activity对象的startActivity(intent)方法,开启一个Activity,参数:Intent对象

 

上面的章程有些烦,谷歌提供了有点便宜之法

获取Intent对象,通过new Intent(packageContext,cls),参数:上下文,class字节码

调用Acitivity对象的startActiity(intent)方法

 

激活系统应该程序的界面

怎么样获得系统使用之界面都名称为,通过清空logcat,模拟器上启动系统利用,查看日志,找到ActivityManager打印的音讯可视

获取Intent对象

调用Intent对象的setClassName(packageName,className)方法,设置类名,参数:想只要激活的利用string类型的包名,String类型的类名

调用startActivity(intent)方法

业务场景是当检讨网络的时段,自动定位到网设置的界面,这种要求

检查用户的纱状态

获ConnectityManager对象,调用上下文对象的getSystemService()方法,参数:Context.CONNECTIVITY_SERVICE

调用ConnectityManager对象的getActiveNetworkInfo()方法,返回NetworkInfo对象

调用NetworkInfo对象的isConnected()方法

看清NetworkInfo对象是不是为null和点方法返回值进行判断,展示Toast

消权限 android.permission.ACCESS_NETWORK_STATE

4.0系统会出问题,之后再说

 

package com.tsh.mstartactivity;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.net.ConnectivityManager;
import android.net.Network;
import android.net.NetworkInfo;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Toast;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
    //跳转
    public void click(View v){
        //第一种方式
        //Intent intent=new Intent();
        //intent.setClassName(this, "com.tsh.mstartactivity.TwoActivity");
        //第二种方式
        Intent intent=new Intent(this,TwoActivity.class);
        startActivity(intent);
    }
    //检查网络
    public void click2(View v){
        ConnectivityManager cm=(ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo info=cm.getActiveNetworkInfo();
        if(info!=null&&info.isConnected()){
            Toast.makeText(this, "网络连接正常", 0).show();
        }else{
            Toast.makeText(this, "网络连接失败", 0).show();
        }
    }
}

 

相关文章