首页 > 代码库 > 【幻化万千戏红尘】qianfeng-Android-Day04-Spinner、ScrollVie、AutoCompleteTextView,Activity初步认识基础学习:

【幻化万千戏红尘】qianfeng-Android-Day04-Spinner、ScrollVie、AutoCompleteTextView,Activity初步认识基础学习:

一、Spinner
    1.Spinner的常用属性
  android:entries=""  设置Spinner的数据源
  android:prompt="" 弹出框设置标题
  android:spinnerMode="" 设置弹出框的弹出模式
  android:popupBackground=""  设置弹出框的背景颜色
    2.Spinner的常用方法
  //当选择某一项的时候调用
  setOnItemSelectedListener
二、适配器
    1.适配器的介绍
    2.ArrayAdapter的介绍及使用
  ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, 你的数据集);
三、数组资源
    1.定义数组资源在values文件夹中的strings.xml文件中定义,如下:
     <string-array name="province">
   <item>广东</item>
   <item>广西</item>
   <item>海南</item>
   <item>福建</item>
  </string-array>
    2.获取数组资源getResources().getStringArray(R.array.province);
四、AutoCompleteTextView
    AutoCompleteTextView的常用方法
  setThreshold(1);//设置当输入几个字符的时候开始提示
  setOnItemClickListener//当点击某一个item的时候调用

五、ScrollView
    1.垂直ScrollView的使用
    2.HorizontalScrollView的使用
 
六、Activity初步认识:【创建、配置、启动Activity】
 (一)、创建Activity:
 两种创建方式
  1.使用ADT提供的工具创建
  2.将Activity当成一个普通的Java类来创建

 (二)、Activity的注册配置:
  作为四大组件之一的Activity,必须要在AndroidManifest清单文件中
  进行注册。如果没有配置,而又在程序中启动了该Activity,
  将抛出异常(ActivityNotFoundException)。
  
 【附加思考】:
  1.当在AndroidManifest清单文件中,设置多个页面都是默认启动页,会报错吗?如果不 报错,到底是执行哪个页面呢?
   执行设置的第一个默认启动页
  2.当在AndroidManifest清单文件中,如果不设置默认启动页,会报错吗?
   不会报错,但是程序没有启动图标
 (三)、启动Activity:
  在Android应用里各组件之间通信使用Intent。一个Activity通过Intent来表达自己的“意图”。
  常用有两种方式:
   1.Intent intent = new Intent(MainActivity.this , NextActivity.class);
   2.Intent intent = new Intent();
     intent.setClass(MainActivity.this , NextActivity.class);
   常用启动方式有两种:
   startActivity();
   startActivityForResult();//注意使用场景,查看Demo2


 (四)、Activity之间交换数据:
  第一种方式:
   甲页面利用intent对象的putExtra()方法传值,乙页面利用getStringExtra()、getIntExtra()等系列方法来一一接收值;
  第二种方式:【常用】
   甲页面利用bundle对象来保存所有需要传递的数值,通过intent的putExtras()方法传值,乙页面利用intent对象的getExtras()方法返回bundle对象,将所有接收的数据放在bundle对象中,利用bundle的get系列方法一一去除数据。
        【备注:】如果甲页面使用putExtras()方法传值,则乙页面使用getExtras()接收值。如果甲页面使用putExtra()方法传值,则乙页面要使用getBundleExtra()方法接收值。

  Activity之间是否可以传递对象呢?【掌握Serializable的用法】
   Serializable的用法:使我们要传递的对象继承Serializable

【幻化万千戏红尘】qianfeng-Android-Day04-Spinner、ScrollVie、AutoCompleteTextView,Activity初步认识基础学习: