zoukankan      html  css  js  c++  java
  • 第一行代码——探索活动

    1、项目中的所有活动都要重写onCreat()方法

    2、通过setContentView()加载一个布局活动

    3、定义一个ID,+id,引用ID,id

    4、活动在ActivityManifest中注册 活动 权限等。

    在<application>

    <activity

    name .类名

    lable

    >

      <intent-filter>

        <action adroid:name = "android.intent.action.MAIN"/>

        <category android:name = "android.intent.category.LAUNCHER"/>

      </intent-filter>

    </activity>

    5、没有声明一个活动作为主活动,则无法在启动器中看到这个程序,一般作为第三方服务供其他的应用在内部进行调用,如微信,支付宝支付。

    6、隐藏标题栏的方法

      在onCreate()方法中添加如下代码:

        requestWindowFeature(Window.FEATURE_NO_TITLE);

        必须在setContentView()之前执行。

    7、在活动中使用Toast

      一种提醒方式,将一些短小的信息通知给用户,然后一段时间后自动消失。

      在onClick中添加

      通过静态方法makeText()方法创建,三个参数传入,第一个:Content上下文,类名.this或者直接this;第二个:文本内容;第三个:Toast显示的时长,两个内置常量可选:Toast.LENGTH_SHORT和Toast.LENGTH_LONG.

      Toast.makeText(MainActivity.this, "我是一个BUTTON", Toast.LENGTH_SHORT).show();
    8、在活动中使用Menu
      新建一个menu文件夹
      <menu>
        <item
          android:id="@+id/add_item"
          android:title="add"
        />
    </menu>
    然后重写onCreateOtionsMenu()方法
    XML文件中:
    <menu xmlns:android="http://schemas.android.com/apk/res/android">

    <item
    android:id="@+id/add_item"
    android:title="Add"
    />
    <item
    android:id="@+id/remove_item"
    android:title="Remove"
    />
    </menu>
    Java代码:
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main,menu);
    return true;
    }
    通过getMenuInflater()得到MenuInflater对象,再调用inflate()方法就可以给当前活动创建菜单,接受的两个参数:通过哪一个资源文件创建菜单,我们的菜单想将添加到哪一个Menu对象中。最后返回true,表示显示出来。
    为菜单项创建响应事件:就要重写onOptionsItemSelected()
    item.getItemId()来判断是哪一个菜单
    9、通过finish()方法销毁活动
    10、Intent的使用:启动活动、启动服务、发送广播。分为显式和隐式
    用startActivity()接受Intent
    bt_haha.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    Log.d("data", "bt_hahaha");
    Toast.makeText(MainActivity.this, "我是一个BUTTON", Toast.LENGTH_SHORT).show();
    //第一个为上下文,第二个为class指定的启动目标
    Intent intent = new Intent(MainActivity.this,SecondClass.class);
    startActivity(intent);
    }
    });
    以上为显示
    下面是隐式:
    <intent-filter>
    <action android:name="hello.one.yhm.com.myfrist.ACTION_START"/>
    <category android:name="android.intent.category.DEFAULT"/>
    </intent-filter>
    Java:
    bt_second.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    Intent intent = new Intent("hello.one.yhm.com.myfrist.ACTION_START");//包名加自己定义,大写
    startActivity(intent);
    }
    });
    <action>只能有一个 <category>可以有多个
    intent.addCategory("hello.one.yhm.com.myfrist.MY_CATEGORY");//addCategory()方法来添加,并要在xml中声明
    <intent-filter>
    <action android:name="hello.one.yhm.com.myfrist.ACTION_START"/>
      <category android:name="android.intent.category.DEFAULT"/>
       <category android:name="android.intent.category.MY_CATEGORY"/>
    </intent-filter>

    隐式的Intent可启动自己程序内的活动,还可以启动其他程序的活动,使得多个应用程序之间功能共享成为可能。如:需展示一个网页,不需自己实现一个浏览器,只需要调用系统的浏览器打开网页
     bt_second.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    // Intent intent = new Intent("hello.one.yhm.com.myfrist.ACTION_START");
    // intent.addCategory("hello.one.yhm.com.myfrist.MY_CATEGORY");//addCategory()方法来添加,并要在xml中声明
    // startActivity(intent);
    Intent intent = new Intent(Intent.ACTION_VIEW);//系统内置的动作
    //Uri.parse()方法将网址字符串解析为Uri对象
    //intent的setData()方法传递uri对象
    intent.setData(Uri.parse("http://www.baidu.com"));
    startActivity(intent);
    }
    });
    还可以在<intent-filter>中配置一个<data>标签,用于更精确的指定当前活动能够响应什么数据类型,配置内容如下:

    android:scheme协议部分 host主机名 port端口 path主机名和端口之后的部分 mimeType可以处理的数据类型,不会指定过多的内容,浏览器中指定一个scheme就可以响应所有的http协议
    调用系统相机http://cowboy.1988.blog.163.com/blog/static/75105798201422645818776/
    如果您看见了我的文章,希望得到您的支持,由衷感谢!
  • 相关阅读:
    Android中获取网络图片的三种方法
    关于android性能,内存优化
    web端调用Android端方法的过程
    [程序猿感悟] [悟] 两篇不错的文章 (转载自 stay4it )
    ListView 中使用onItemClick和onItemLongClick的常见问题
    TextView 在java中使用Html设置字体大小颜色
    Android-手机端开发用界面原型与布局工具
    Android Service完全解析,关于服务你所需知道的一切(下)
    Android Service完全解析,关于服务你所需知道的一切(上)
    (转 todo阅读)Android 官方博客
  • 原文地址:https://www.cnblogs.com/h4ck/p/5368951.html
Copyright © 2011-2022 走看看