我的编程空间,编程开发者的网络收藏夹
学习永远不晚

【android编程】第五讲-Android高级组件

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

【android编程】第五讲-Android高级组件

Android第五讲高级组件 文章目录Android第五讲高级组件零. 适配器Adapter一. 列表和列表视图二.网格视图 GridView三.图像切换器 ImageSwitcher四.画廊视图 Gallery五.选项卡 TabHost六.滚动视图 ScrollView七.自动完成文本框 AutoCompleteTextView八. 题目记录 零. 适配器Adapter

将各种数据以合适的形式显示在View中给用户看。

img

ArrayAdapter

支持泛型操作,最简单的一个Adapter,只能展现一行文字~
adapter = new ArrayAdapter(this,android.R.layout.simple_expandable_list_item_1,datas);
ArrayAdapter的参数说明:
第一个参数:context上下文对象
第二个参数:每一个item的样式,可以使用系统提供,也可以自定义就是一个TextView
第三个参数:数据源,要显示的数据
系统提供的item的样式,可以试一试
simple_list_item1:单独的一行文本框
simple_list_item2:有两个文本框组成
simple_list_item_checked每项都是由一个已选中的列表项
simple_list_item_multiple_choice:都带有一个复选框
simple_list_item_single_choice:都带有一个单选框

ArrayAdapter有五种布局类型:

simple_expandable_list_item_1: img
simple_expandable_list_item_2: img
simple_list_item_checked: img
simple_list_item_multiple_choice: img
simple_list_item_single_choice: img

SimpleAdapter(简单适配器)

同样具有良好扩展性的一个Adapter,可以自定义多种效果!
adapter = new SimpleAdapter(MainActivity.this,lists,R.layout.list_item
                ,new String[]{"image","theme","content"}
                ,new int[]{R.id.image1,R.id.text1,R.id.text2});
simpleAdapter中五个参数的
第一个参数:上下文对象
第二个参数:数据源是含有Map的一个集合
第三个参数:每一个item的布局文件
第四个参数:new String[]{}数组,数组的里面的每一项要与第二个参数中的存入map集合的的key值一样,一一对应
第五个参数:new int[]{}数组,数组里面的第三个参数中的item里面的控件id

BaseAdapter

BaseAdapter使用相对最广,因为局限性小,使用起来更加自由,自己写,抽象类
使用BaseAdapter比较简单,主要是通过继承此类来实现BaseAdapter的四个方法:
public int getCount(): 适配器中数据集的数据个数;
public Object getItem(int position): 获取数据集中与索引对应的数据项;
public long getItemId(int position): 获取指定行对应的ID;
public View getView(int position,View convertView,ViewGroup parent): 获取没一行Item的显示内容。

参考链接:

https://www.cnblogs.com/endv/p/9774417.html

https://www.cnblogs.com/xianfeng-zhang/p/8134684.html

一. 列表和列表视图

Spinner

在value中arrays.xml定义一个数组

使用步骤:

在布局中添加Spinner 设置数据源 设置显示的主题 添加点击的响应事件

code:



     北京  
    上海  
    广州  
    深圳  
mySpinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener() {//选择item的选择点击监听事件  
                    public void onItemSelected(AdapterView arg0, View arg1,  
                            int arg2, long arg3) {  
                        // TODO Auto-generated method stub  
                        // 将所选mySpinner 的值带入myTextView 中   
                        myTextView.setText("您选择的是:" + arg2+"个");//文本说明  
                    }  
                    public void onNothingSelected(AdapterView arg0) {  
                        // TODO Auto-generated method stub  
                        myTextView.setText("Nothing");  
                    }  
                });  

ListView列表视图

ListView添加组件 xml

code:

activity_main.xml


array.xml


        第一行代码Android
        Android开发与实践
        疯狂Android讲义
        精通Android Studio

mainActivity.java

package com.example.bean.myapplication39v1;
import android.app.Activity;
import android.app.ListActivity;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        String[] data = new String[]{"第一行代码Android","Android开发与实践","疯狂Android讲义","精通Android Studio"};
        ListView listView;
        ArrayAdapter adapter;
        adapter = new ArrayAdapter(this,android.R.layout.simple_list_item_multiple_choice,data);
        //setListAdapter(adapter);
        listView = (ListView) findViewById(R.id.list0);
        listView.setAdapter(adapter);
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView parent, View view, int position, long id) {
                //通过下标来获取内容
                String str = parent.getItemAtPosition(position).toString();
                Toast.makeText(MainActivity.this, str, Toast.LENGTH_SHORT).show();
                //position 数据的下标  id 数据的id
                //Toast.makeText(MainActivity.this, "position="+position+"id="+id, Toast.LENGTH_SHORT).show();
            }
        });
    }
}
Activity继承ListActivity(extends)

code:



List<Map> listitem = new ArrayList<Map>(); //存储数据的数组列表
//写死的数据,用于测试
int[] image_expense = new int[]{R.mipmap.detail_income, R.mipmap.detail_payout }; //存储图片
String[] expense_category = new String[] {"发工资", "买衣服"};
String[] expense_money = new String[] {"30000.00", "1500.00"};
for (int i = 0; i < image_expense.length; i++)
{
    Map map = new HashMap();
    map.put("image_expense", image_expense[i]);
    map.put("expense_category", expense_category[i]);
    map.put("expense_money", expense_money[i]);
    listitem.add(map);
}
//创建适配器
// 第一个参数是上下文对象
// 第二个是listitem
// 第三个是指定每个列表项的布局文件
// 第四个是指定Map对象中定义的两个键(这里通过字符串数组来指定)
// 第五个是用于指定在布局文件中定义的id(也是用数组来指定)
SimpleAdapter adapter = new SimpleAdapter(getActivity()
        , listitem
        , R.layout.fragment_one_item
        , new String[]{"expense_category", "expense_money", "image_expense"}
        , new int[]{R.id.tv_expense_category, R.id.tv_expense_money, R.id.image_expense});
ListView listView = (ListView) v.findViewById(R.id.lv_expense);
listView.setAdapter(adapter);

参考链接:

https://blog.csdn.net/qq_38217237/article/details/79044448

https://www.cnblogs.com/AnneHan/p/9726391.html

二.网格视图 GridView 当屏幕上有很多元素(文字、图片或其他元素)需要按矩阵格式进行显示时,就可以使用GridView控件来实现。 GridView的一些属性:
1. android:numColumns=”auto_fit” //GridView的列数设置为自动,也可以设置成2、3、4……
2. android:columnWidth=”90dp " //每列的宽度,也就是Item的宽度
3. android:stretchMode=”columnWidth" //缩放与列宽大小同步
4. android:verticalSpacing=”10dp” //两行之间的边距
5. android:horizontalSpacing=”10dp” //两列之间的边距
6. android:cacheColorHint="#00000000" //去除拖动时默认的黑色背景
7. android:listSelector="#00000000" //去除选中时的黄色底色
8. android:scrollbars=“none” //隐藏GridView的滚动条
9. android:fadeScrollbars=“true” //设置为true就可以实现滚动条的自动隐藏和显示
10. android:fastScrollEnabled=“true” //GridView出现快速滚动的按钮(至少滚动4页才会显示)
11. android:fadingEdge=“none” //GridView衰落(褪去)边缘颜色为空,缺省值是vertical。(可以理解为上下边缘的提示色)
12. android:fadingEdgeLength=“10dip” //定义的衰落(褪去)边缘的长度
13. android:stackFromBottom=“true” //设置为true时,你做好的列表就会显示你列表的最下面
14. android:transcriptMode=“alwaysScroll” //当你动态添加数据时,列表将自动往下滚动最新的条目可以自动滚动到可视范围内
15. android:drawSelectorOnTop=“false” //点击某条记录不放,颜色会在记录的后面成为背景色,内容的文字可见(缺省为false)

code:

界面布局


在GridView控件中,我们通过android:numColumns="4"指定了网格的列数为4;通过android:horizontalSpacing="10dp"和android:verticalSpacing="10dp"指定了网格之间的水平距离和垂直距离都为10dp。

网格元素布局


资源储存

在该实例中,我们需要对众多的应用软件图标以及应用软件名称进行储存。很显然,应用软件图标以及应用软件名称之间存在着一一对应的关系,我们可以使用HashMap分别对应用软件图标以及应用软件名称进行存储,然后再将HashMap添加到ArrayList中,便可以完成资源的储存了。具体实现方法如下

//将图标图片和图标名称存入ArrayList中
  //Author:博客园-依旧淡然
  ArrayList<HashMap> item = new ArrayList<HashMap>();
  for (int i = 0; i < resIds.length; i++) {
      HashMap map = new HashMap();
      map.put("itemImage", resIds[i]);
      map.put("itemName", name[i]);
      item.add(map);
  }

其中,数组resIds[]储存着应用软件图标的资源id;数组name[]储存着应用软件名称,并通过for循环遍历语句将其存入了HashMap中。

简单适配器SimpleAdapter

简单适配器SimpleAdapter继承自BaseAdapter,用于将静态数据映射到xml文件中定义好的视图当中。比如可以指定静态数据为由Map组成的ArrayList。在ArrayList中每个条目对应List中的一行,Map可以包含多项数据。

SimpleAdapter的构造方法如下:

public SimpleAdapter (Context context, List<? extends Map

三.图像切换器 ImageSwitcher

ImageSwitcher是Android中控制图片展示效果的一个控件,如:幻灯片效果

重要方法

setImageURI([Uri](file:///F:/Android/api/docs_r01-linux/reference/android/net/Uri.html) uri):设置图片地址

setImageResource(int))(int resid):设置图片资源库

setImageDrawable(Drawable drawable):绘制图片

1.获取到xml布局中的ImageSwitcer控件
2.给isImages设置工厂方法.setFactory((ViewSwitcher.ViewFactory)this);这个方法就是要给ImageSwitcher这个控件中加入ImageView这样的内容,方便切换。这里需要重写一个方法View makeView(){return imageView}
3.得到传入该Activity的参数(点击这个图片时要传入该图片的position)
4.数据源需要用到,在这里初始化了。
5.给ImageSwitcher设置数据源isImage.setImageResource(images[currentPosition]);
6.写一下两个button的点击触发方法。一个displayPrevious(View view) 一个displayNext(View view)方法。改变图片的方式就是增加/减少currentPosition,然后设置ImageResource

code:


public class DisplayActivity extends Activity implements ViewSwitcher.ViewFactory {
//注意这里该Activity需要实现ViewFactory这个接口中的一些方法,就是下面我们要用到的makeView这个方法
//声明一个图片切换器
private ImageSwitcher isImages;
//记录当前显示的第几张图片,是一个数组的索引
private int currentPosition;
int[] images;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display);
//初始化切换器
isImages = (ImageSwitcher) findViewById(R.id.imageSwitcher1);
//给切换器加一个factory 可以把它看成是一个容器
isImages.setFactory((ViewSwitcher.ViewFactory) this);
//当前显示的图片的索引就是从intent传过来的附加信息,我们通过getIntExtra得到他
currentPosition = getIntent().getIntExtra("position",0);
images = new int[]{
R.mipmap.image1,R.mipmap.image2,R.mipmap.image3,
R.mipmap.image4,R.mipmap.image5,R.mipmap.image6,
R.mipmap.image7,R.mipmap.image8,R.mipmap.image9,
R.mipmap.image1,R.mipmap.image2,R.mipmap.image3,
R.mipmap.image4,R.mipmap.image5,R.mipmap.image6,
R.mipmap.image7,R.mipmap.image8,R.mipmap.image9
};
//给图片切换器设置图片
isImages.setImageResource(images[currentPosition]);
}

public void displayPrevious(View view){
currentPosition--;
if(currentPositionimages.length-1){
Toast.makeText(this,"已经是最后一张图片了",Toast.LENGTH_SHORT).show();
currentPosition = images.length-1;
}
isImages.setImageResource(images[currentPosition]);
}

@Override
public View makeView() {
ImageView imageView = new ImageView(this);
imageView.setLayoutParams(new ImageSwitcher.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
return imageView;
}
}
原文链接:https://blog.csdn.net/a243845305/article/details/50254961
四.画廊视图 Gallery

Gallery与之前讲的Spinner有共同的父类:AbsSpinner,表明Gallery和Spinner都是一个列表框。他们之间的区别在于Spinner显示的是一个垂直的列表框,而Gallery显示的是一个水平的列表框。Gallery与Spinner有一个区别:Spinner的作用是供用户选择,而Gallery则允许用户通过拖动来查看上一个、下一个列表项。

Gallery常用的XML属性及相关方法

XML属性 相关方法 说明
android:animationDuration setAnimationDuration(int) 设置列表项切换时的动画持续时间
android:gravity setGravity(int) 设置对齐方式
android:spacing setSpacing(int) 设置Gallery内列表项之间的间距
android:unselectedAlpha setUnselectedAlpha(int) 设置没有选中列表项的透明性

Gallery本身的用法非常简单----基本上和Spinner的用法相似,只要为他提供一个内容Adapter即可,该Adapter的getView方法返回的View作为Gallery列表的列表项;如果程序需要监控到Gallery选择项的改变,可以通过为Gallery添加OnItemSelectedListener监听器即可实现。

Layout/main.xml




上面的布局很简单,只定义了两个组件:ImageSwitcher和Gallery组件。主程序也很简单,为ImageSwitcher传入一个ViewFactory对象,为Gallery传入一个Adapter对象。这样ImageSwitcher和Gallery就可以工作了。

为了让ImageSwitcher可以显示Gallery中选中的图片,为Gallery绑定一个叫做OnItemSelectedListener监听。

主程序:GalleryTest.java

import android.app.Activity;
import android.content.res.TypedArray;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.view.animation.AnimationUtils;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.ImageSwitcher;
import android.widget.ImageView;
import android.widget.ViewSwitcher.ViewFactory;
public class GallaryTest extends Activity{
    int[] imageIds = new int[]
    {
        R.drawable.shuangzi, R.drawable.shuangyu,
        R.drawable.chunv, R.drawable.tiancheng, R.drawable.tianxie,
        R.drawable.sheshou, R.drawable.juxie, R.drawable.shuiping,
        R.drawable.shizi, R.drawable.baiyang, R.drawable.jinniu,
        R.drawable.mojie };
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        final Gallery gallery = (Gallery) findViewById(R.id.gallery);
        // 获取显示图片的ImageSwitcher对象
        final ImageSwitcher switcher = (ImageSwitcher) 
            findViewById(R.id.switcher);
        // 为ImageSwitcher对象设置ViewFactory对象
        switcher.setFactory(new ViewFactory()
        {
            @Override
            public View makeView()
            {
                ImageView imageView = new ImageView(GallaryTest.this);
                imageView.setBackgroundColor(0xff0000);
                imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
                imageView.setLayoutParams(new ImageSwitcher.LayoutParams(
                    LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
                return imageView;
            }
        });
        // 设置图片更换的动画效果
        switcher.setInAnimation(AnimationUtils.loadAnimation(this,
            android.R.anim.fade_in));
        switcher.setOutAnimation(AnimationUtils.loadAnimation(this,
            android.R.anim.fade_out));
        // 创建一个BaseAdapter对象,该对象负责提供Gallery所显示的图片
        BaseAdapter adapter = new BaseAdapter()
        {
            @Override
            public int getCount()
            {
                return imageIds.length;
            }
            @Override
            public Object getItem(int position)
            {
                return position;
            }
            @Override
            public long getItemId(int position)
            {
                return position;
            }
            // 该方法的返回的View就是代表了每个列表项
            @Override
            public View getView(int position, View convertView, ViewGroup parent)
            {
                // 创建一个ImageView
                ImageView imageView = new ImageView(GallaryTest.this);
                imageView.setImageResource(imageIds[position % imageIds.length]);
                // 设置ImageView的缩放类型
                imageView.setScaleType(ImageView.ScaleType.FIT_XY);
                imageView.setLayoutParams(new Gallery.LayoutParams(75, 100));
                TypedArray typedArray = obtainStyledAttributes(R.styleable.Gallery);
                imageView.setBackgroundResource(typedArray.getResourceId(R.styleable.Gallery_android_galleryItemBackground, 0));
                return imageView;
            }
        };
        gallery.setAdapter(adapter);
        gallery.setOnItemSelectedListener(new OnItemSelectedListener()
        {
            // 当Gallery选中项发生改变时触发该方法
            @Override
            public void onItemSelected(AdapterView parent, View view,
                int position, long id)
            {
                switcher.setImageResource(imageIds[position % imageIds.length]);
            }
            @Override
            public void onNothingSelected(AdapterView parent)
            {
            }
        });
    }
}

参考链接:https://www.cnblogs.com/Yang-jing/p/3922119.html

五.选项卡 TabHost

介绍

TabHost可以方便地在窗口上放置多个标签页,每个标签页相当于获得了一个与外部容器大小相同的组件摆放区域
TabHost是一个简单的容器,提供如下两种方法来创建选项卡
newTabSpec(String tag):创建选项卡
addTab(TabHost.TabSpec tabSpec):添加选项卡
使用TabHost有三种方法

方法1,继承TabActivity
主布局文件不需要定义TabHost组件,这里用三个垂直的LinearLayout作为标签页,每个标签页里面有两个TextView组件

方法2,在布局文件中使用TabHost,不用继承TabActivity
使用findViewById获取TabHost组件
1 在界面布局中定义TabHost组件,并为该组件定义选项卡内容
2 使用findViewById获取TabHost组件
3 通过TabHost对象的方法来创建和添加选项卡

方法3基本和方法2类似,不用继承TabActivity,只是Tab的内容分开到单独的xml文件,每个标签页都需要inflate一次,和方法2最大的区别就是标签页分开到不同的xml文件中

六.滚动视图 ScrollView xml创建

滚动视图有两种,一种是ScrollView,另一种是HorizontalScrollView.

<HorizontalScrollView                            
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

请注意:ScrollView里只能有一个子控件,如果有多个就会报错!!

如果想要用两个TextView的话可以用线性布局管理器LinearLayout(或者其它的)将括起来,这样就不会报错了

Java中new关键字创建

MainActivity.java文件

   package com.example.c_huimin.myapplication;
   import android.support.v7.app.AppCompatActivity;
   import android.os.Bundle;
   import android.widget.ImageView;
   import android.widget.LinearLayout;
   import android.widget.ScrollView;
   import android.widget.TextView;
   public class MainActivity extends AppCompatActivity {
       @Override
       protected void onCreate(Bundle savedInstanceState) {
           super.onCreate(savedInstanceState);
           setContentView(R.layout.activity_main);
           LinearLayout ll = super.findViewById(R.id.ll);
           LinearLayout ll2 = new LinearLayout(MainActivity.this);
           ll2.setOrientation(LinearLayout.VERTICAL);
           ScrollView scrollView = new ScrollView(MainActivity.this);
           ll.addView(scrollView);
           scrollView.addView(ll2);
           ImageView imageView = new ImageView(MainActivity.this);
           imageView.setImageResource(R.drawable.img03);
           ll2.addView(imageView);
           TextView textView = new TextView(MainActivity.this);
           textView.setText(R.string.dictionary);
           ll2.addView(textView);
       }
   }
   //这段代码好比一个线性布局管理器里嵌套一个线性布局管理器,子线性布局管理器里又有2个控件,一个是ImageView, 另一个是TextView 

string.xml文件

   
       My Application
       123\n我爱你\n123\n我爱你\n123\n我爱你\n123\n我爱你\n123\n我爱你\n123\n我爱你\n123\n我爱你\n123\n我爱你\n123\n我爱你\n123\n我爱你\n123\n我爱你\n123\n我爱你\n123\n我爱你\n123\n我爱你\n123\n我爱你\n123\n我爱你\n

activity_main.xml文件

   
参考链接:https://blog.csdn.net/Huimin_520/article/details/80377179 七.自动完成文本框 AutoCompleteTextView

自动完成文本框(AutoCompleteTextView)从EditText派生而出,实际上他也是一个文本编辑框,但它比普通编辑框多了一个功能:当用户输入一定字符后,自动完成文本框会显示一个下拉菜单,供用户选择,当用户选择某个菜单后,AutoCompleteTextView按用户选择自动填写该文本框

AutoCompleteTextView除了可使用EditText提供的XML属性和方法之外,还有以下的属性

android:completionHint setCompletionHint(CharSequence) 设置下拉菜单中的提示标题
android:completionHintView 设置下拉菜单中提示标题的视图
android:completionThreshold setThreshold(int) 设置用户至少输入几个字符才会显示提示
adnroid:dropDownAnchor setDropDownAnchor(int) 设置下拉菜单的定位“锚点”组件,如果没有指定该属性,将使用该TextView本身作为定位”锚点“组件
adnroid:dropDownHeight setDropDownHeight(int) 设置下拉菜单的高度
android:dropDownHorizontalOffest 设置下拉菜单与文本框之间的水平偏移,下拉菜单默认与文本框左对齐
adnroid:dropDownVerticalOffest 设置下拉菜单与文本框之间的垂直偏移,下拉菜单默认紧跟文本框
android:dropDownWidth setDropDownWidth(int) 设置下拉菜单的宽度
android:popupBackground setDropDownBackgroundResource(int) 设置下拉菜单的背景

使用AutoCompleteTextView很简单,只要为它设置一个Adapter,该Adapter封装了AutoCompleteTextView的预测文本


   
package com.example.autocompletetextview;
import android.app.Activity;
import android.app.ActionBar;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.os.Build;
public class MainActivity extends Activity {
	//定义字符串数组,作为提示的文本
	String[] books = new String[] {
			"my name is xie",
			"my name is qing",
			"my name is cheng",
			"my name is ding",
			"my name is na"
	};
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_first);
        //创建一个ArrayAdapter,封装数组
        ArrayAdapter aa = new ArrayAdapter(this, android.R.layout.simple_dropdown_item_1line, books);
        AutoCompleteTextView view = (AutoCompleteTextView)findViewById(R.id.auto);
        //设置Adapter
        view.setAdapter(aa);
    }
}

参考链接:https://blog.csdn.net/qq_27384607/article/details/47151195

八. 题目记录 列表选择框的功能是 B A.按下按钮后出现一个列表 B.提供一系列选择项供用户选择1.00/1.00 C.可以选择若干个列表 D.可以有选择性地把列表框起来

获取列表选择框的值可以使用 A

A.getSelectItem()方法 B.getText()方法 C.findViewById()方法 D.OnItemSelected()方法 0000

关于列表选择框下列说法错误的是 D

A.通常只能选择一个选择项 B.可以使用适配器保存列表选择项 C.可以使用String资源保存列表选择0.00/1.00 D.可以直接将列表项赋值给选择框

列表选择框和列表视图的区别是 B

A.列表视图占屏幕空间较小

B.列表选择框是下拉形式的,而列表视图是平铺的1.00/1.00

C.列表选择框不能使用适配器

D.列表选择框比列表视频直观

关于适配器下列哪些说法是正确的 D

A.适配器用于手机与外设之间的兼容问题 B.ArrayAdapter可以提供多种信息 C.SimpleAdapter只能提供文字信息 D.适配器主要是将数据绑定在UI控件上

图像切换器特有的功能是 B

A.可以设置适配器 B.可以使用动画效果1.00/1.00 C.可以使用class="lazy" data-src加载图片 D.可以显示图像

画廊视图 C

A.某一时刻只能看到一幅图片 B.标记为ImageSwitcher C.按水平方向排列显示内容1.00/1.00 D.不能使用适配器 关于选项卡下列不正确的说法是 C A.需要为每一个标签页创建一个布局文件 B.TabHost是选项卡的标记 C.选项卡会增加窗体的数量1.00/1.00 D.选项卡的好处是将页面分成多个标签页 滚动视图 C A.一般在.XML文件中创建滚动视图 B.滚动视图可以放置多个组件 C.使用滚动视图可以浏览比窗口大的页面1.00/1.00 D.滚动视图实现了翻页功能 自动完成文本框 B A.使用EditText标记 B.在输入了一些文字后提供一相关的可选项 C.可以使用entris设置可选项 D.可以自动填充文本框 列表选择框的标签是 D A.ArrayAdaptor B.ListView C.List D.Spinner
作者:xbean1028


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

【android编程】第五讲-Android高级组件

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

【android编程】第五讲-Android高级组件

Android第五讲高级组件 文章目录Android第五讲高级组件零. 适配器Adapter一. 列表和列表视图二.网格视图 GridView三.图像切换器 ImageSwitcher四.画廊视图 Gallery五.选项卡 TabHost六
2022-06-06

【android编程】 第四讲-Android基本控件

Android 基本控件 文章目录Android 基本控件文本框 TextView基本属性其他属性编辑框 EditText普通按钮 Button图片按钮ImageButton单选按钮 RadioButton复选按钮 CheckBox图像视图
2022-06-06

【android编程】第七讲-android Activity

【android编程】第七讲-android Activity 文章目录【android编程】第七讲-android Activity1. 学习指导2. Activity生命周期3. 创建Activity4. 配置Activity5. 启动
2022-06-06

android手机编程 第二讲

android手机编程 第二讲 文章目录android手机编程 第二讲0. 学习目标:1. Android 项目目录结构2. 通用的资源访问3. 字符串、颜色、尺寸应用4. Darwable资源5.Android项目布局文件6. Andro
2022-06-06

【android编程】第八讲-Intent和BroadcastReceiver

第八讲Intent和BroadcastReceiver 本讲介绍了Android应用程序中最为重要Intent和四大组件之一 文章目录第八讲Intent和BroadcastReceiverIntentIntent对象构成Component
2022-06-06

【android编程】 第六讲-Android菜单布局及使用

第六讲Android菜单 实验题Code链接:https://blog.csdn.net/xbean1028/article/details/104800456 文章目录第六讲Android菜单1.定义菜单资源文件属性2.选项菜单3. 上下
2022-06-06

【android编程】第十一讲-数据储存

第十一讲数据储存 文章目录第十一讲数据储存0. 学习指导1.使用SharedPreferences示例2.SQLite数据库编程SQLiteOpenHelper类 常用方法自定义数据库子类(继承 SQLiteOpenHelper 类)创建数
2022-06-06

移动平台开发技术——第5讲 Android高级控件 慕课习题

第5讲 客观题自测练习 1单选(1分)列表选择框的标签是 A.ListView B.ArrayAdaptor C.Spinner D.List 正确答案:C 2单选(1分)列表选择框的功能是 A.按下按钮后出现一个列表 B.可以有选择性地把
2022-06-06

Android编程开发之Spinner组件用法

本文实例讲述了Android编程开发之Spinner组件用法。分享给大家供大家参考,具体如下: Spinner组件组要用显示一个下拉列表,在使用中需要用到适配器Adapter,下面是一个该组件的使用示例 首先是布局文件main.xml:
2022-06-06

Android编程四大组件分别是什么

Android开发四大组件分别是:活动(Activity):用于表现功能。服务(Service):后台运行服务,不提供界面呈现。广播接收器(BroadcastReceiver):用于接收广播。内容提供商(ContentProvider):支
2022-06-06

Android编程防止进程被第三方软件杀死的方法

本文实例讲述了Android编程防止进程被第三方软件杀死的方法。分享给大家供大家参考,具体如下: 项目测试的时候发现,按home键回到桌面,再用360清理内存,软件被结束,再次进入的时候报错,看了下log,以为是有的地方没有控制好,但是又不
2022-06-06

Android学习笔记(二十):高级UI组件----通用组件(滚动视图ScrollView)

通用组件(滚动视图ScrollView) 滚动视图 当窗体当中的内容比较多,一屏幕显示不下时,超出的部分就不能被用户看到。可以添加一个滚动条,当用户上下拖动屏幕时,就会显示出一个滚动条,屏幕中的内容也会随着用户的拖动而上下滚动,这样就可以显
2022-06-06

Android编程中自定义组件的示例分析

这篇文章主要介绍了Android编程中自定义组件的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Android是什么Android是一种基于Linux内核的自由及开放
2023-05-31

Android编程获取组件尺寸大小的方法

本文实例讲述了Android编程获取组件尺寸大小的方法。分享给大家供大家参考,具体如下: 在oncreate()中利用view.getWidth()或是view.getHeiht()来获取view的宽和高,看似没有问题,其实他们去得值是0,
2022-06-06

Android的Service应用程序组件基本编写方法

Service是什么 Service是一个android 系统中的应用程序组件,它跟Activity的级别差不多,但是他没有图形化界面,不能自己运行,只能后台运行,并且可以和其他组件进行交互如更新ContentProvider,Intent
2022-06-06

Android编程四大组件之Activity用法实例分析

本文实例讲述了Android编程四大组件之Activity用法。分享给大家供大家参考,具体如下: 这里详细介绍如何创建Activity、生命周期、内存管理、启动模式。 创建Activity 一.定义Activity 1. 定义Activit
2022-06-06

Android编程获取屏幕宽高与获取控件宽高的方法

本文实例讲述了Android编程获取屏幕宽高与获取控件宽高的方法。分享给大家供大家参考,具体如下: 获取屏幕宽高// 获取屏幕宽高(方法1) int screenWidth = getWindowManager().getDefaultDi
2022-06-06

Android编程获取控件宽和高的方法总结分析

本文总结分析了Android编程获取控件宽和高的方法。分享给大家供大家参考,具体如下: 我们都知道在onCreate()里面获取控件的高度是0,这是为什么呢我们来看一下示例: 首先我们自己写一个控件,这个控件非常简单:public clas
2022-06-06

Android高级界面组件之拖动条和评星条的功能实现

一 拖动条 安卓手机音量设置都是给出一个拖动条,使得用户能够拖动滑块进行设置,这里我们介绍拖动条。 安卓拖动条控件是继承自ProgressBar控件,所以它能够支持ProgressBar的xml属性。但是他有自己的独
2022-06-06

Android编程四大组件之BroadcastReceiver(广播接收者)用法实例

本文实例讲述了Android编程四大组件之BroadcastReceiver(广播接收者)用法。分享给大家供大家参考,具体如下: 这里介绍如何创建广播、如何发送一个无序广播和有序广播、以及监听短信以及监听呼出电话(当我们发短信和打电话,系统
2022-06-06

编程热搜

  • Android:VolumeShaper
    VolumeShaper(支持版本改一下,minsdkversion:26,android8.0(api26)进一步学习对声音的编辑,可以让音频的声音有变化的播放 VolumeShaper.Configuration的三个参数 durati
    Android:VolumeShaper
  • Android崩溃异常捕获方法
    开发中最让人头疼的是应用突然爆炸,然后跳回到桌面。而且我们常常不知道这种状况会何时出现,在应用调试阶段还好,还可以通过调试工具的日志查看错误出现在哪里。但平时使用的时候给你闹崩溃,那你就欲哭无泪了。 那么今天主要讲一下如何去捕捉系统出现的U
    Android崩溃异常捕获方法
  • android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
    系统的设置–>电池–>使用情况中,统计的能耗的使用情况也是以power_profile.xml的value作为基础参数的1、我的手机中power_profile.xml的内容: HTC t328w代码如下:
    android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
  • Android SQLite数据库基本操作方法
    程序的最主要的功能在于对数据进行操作,通过对数据进行操作来实现某个功能。而数据库就是很重要的一个方面的,Android中内置了小巧轻便,功能却很强的一个数据库–SQLite数据库。那么就来看一下在Android程序中怎么去操作SQLite数
    Android SQLite数据库基本操作方法
  • ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
    工作的时候为了方便直接打开编辑文件,一些常用的软件或者文件我们会放在桌面,但是在ubuntu20.04下直接直接拖拽文件到桌面根本没有效果,在进入桌面后发现软件列表中的软件只能收藏到面板,无法复制到桌面使用,不知道为什么会这样,似乎并不是很
    ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
  • android获取当前手机号示例程序
    代码如下: public String getLocalNumber() { TelephonyManager tManager =
    android获取当前手机号示例程序
  • Android音视频开发(三)TextureView
    简介 TextureView与SurfaceView类似,可用于显示视频或OpenGL场景。 与SurfaceView的区别 SurfaceView不能使用变换和缩放等操作,不能叠加(Overlay)两个SurfaceView。 Textu
    Android音视频开发(三)TextureView
  • android获取屏幕高度和宽度的实现方法
    本文实例讲述了android获取屏幕高度和宽度的实现方法。分享给大家供大家参考。具体分析如下: 我们需要获取Android手机或Pad的屏幕的物理尺寸,以便于界面的设计或是其他功能的实现。下面就介绍讲一讲如何获取屏幕的物理尺寸 下面的代码即
    android获取屏幕高度和宽度的实现方法
  • Android自定义popupwindow实例代码
    先来看看效果图:一、布局
  • Android第一次实验
    一、实验原理 1.1实验目标 编程实现用户名与密码的存储与调用。 1.2实验要求 设计用户登录界面、登录成功界面、用户注册界面,用户注册时,将其用户名、密码保存到SharedPreference中,登录时输入用户名、密码,读取SharedP
    Android第一次实验

目录