11.Android 高级组件

1.src:存放所有的Java源程序。
2.gen:为ADT插件自动生成的代码文件保存路径,里面的R.java将保存所有的资源|D。
3.assets:可以存放项目一些较大的资源文件,例如:图片、音乐、字体等。
4.res:可以存放项目中所有的资源文件,例如:图片(.png、 jpg) 、文本等。
5. res/drawable-hdpi:保存高分辨率图片资源,可以使用Resources getDrawable(id)可以获得资源类型。
6. res/drawable-ldpi:保存低分辩率图片资源,可以使用Resources.getDrawable(id)可以获得资源类型。
7.res/drawable mdpi:保存中等分辨率图片资源,可以使用Resources.getDrawable(id)可以获得资源类型。
8.res/layout:存放所有的布局文件,主要是用于排列不同的显示组件,在Android程序中要读取此配置。
9.res/values:存放一 些资源文件的信息, 用于读取文本资源,在本文件夹之中有一些约定的文件名称:
10. .arrays.xml:定义数组数据: (在个这个xpl命名的时候可以随便起名, 因为最后用的时候只是用到写在这个xml文件中的array的名字)
使用: xml某一个组件属性:值: @XXX/资源的ID
根据资源类型设置的:图片、文字颜色、数组、音频视频

文本
用在文本设置属性
android:id="@ti d/tvname "
android:text="@string/tvname">

图片
1.建立图片资源
将图片复制到drawable文加下;系统默认给资源建立R类ID,
@drawable/文件名

样式资源
组件、布局的样式设置:样式文件里设置(css文件)
使用自定义样式:style="@style/myStyle"
与网页Ccss效果一样。

布局文件资源
1.建立自己的布局文件
2.在其他布局件中引入自定义的布局文件。

<?xml version="1.0" encoding="utf-8"?>
<Linearlayout xm1ns :android="http://schemas . android. com/apk/res /android"
androi d:ori entation="vertical" android: layout_ _wi dth="match_ parent"
android: layout_ height="match_ parent">
<Button
android:layout_ wi dth="wrap_ content"
android:layout_ height="wrap_ content"
android:text="按钮">
</Button>
</Linearlayout>

选择器起源
设置按钮或者其他组件可以有不同状态时显示不用效果
1.建立选择起源:类型drawable
2.设置组件状态样式
3. android:background="@drawable/btn test"

<?xml version="1.0" encoding="utf-8"?>
<selector xmIns ; android="http://schemas . android. com/apk/res/android">
<item android:state_ pressed="true" android:dr awable="@co1or/colorAccent" /> <!- -
pressed -->
<item android:state_ focused="true" android:drawab7e="acolor /colorAccent" /> <! --
focused -->
<item android:state_ hovered="true"
anidroid; drawab1e="ecolor/colorAccent" /> <!--
hovared
<item android:drawable="@color/coloraccent" /> <! default -->
</selector>

高级组件
●Notification, 是一种具有全局效果的通知,可以在系统的通知栏中显示。当APP向系统发出通知时,它将先以图标的形式显示在通知栏中。用户可以下拉通知栏查看通知的详细信息。通知栏和抽屉式通知栏均是由系统控制,用户可以随时查看。
●创建一个简单的Notification 。主要有以下三步:
●获取Notificat ionManager 实例
●实例化Notificat ionCompat. Builder并设置相关属性
●通过builder. build() 方法生成Notification 对象,并发送通知
●小图标,通过setSmallIcon() 方法设置
●标题,通过setContentTitle() 方法设置
●内容,通过setContentText() 方法设置

int channelId=l;
//1.获取消息管理器
NotificationManager manager= (NotificationManager)
getSystemService(Context .NOTIFICATION. _SERVICE);
//2.通过消息管理获取Builder;
NotificationCompat。Builder builder=new
NotificationCompat。Builder (MainActivity. this ,string. valueOf (channelId));
//android 10.>andorid 8I
if (android. os . Build.VERSION.SDK INT >= android. os . Bui1d.VERSION CODES.0) {
NotificationChanne1 channe1=new
Notificati onChannel(string. valueof (channelId) , "chann1_ name" ,NotificationManager . IMPORTANC
E_ HIGH); 
manager . createNotificati onChanne1 (channe1);
//3.设置属性
builder . setContentTit1e("系统消息");
bui1der . setContentText("系统升级...");
builder . setSma1lIcon(R. drawable.1ogo);
builder . setLargeIcon();//这是大图标
builder . setwhen(System. currentTimeMillis()); 
builder .setAutoCancel (true);//设置请除消息
Notification notification= builder . bui1d(;
//4.显示
manager . notify(channelId ,notification);
//5.后续事件处理;Intent:转发器;
}

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

自动完成文本框(AutoCompleteTextView)
在这里插入图片描述

<AutoCompleteTextView
android: id-”@+ id/autv"
android: layout_ width=" match_ parent 
android: layout_ height=" wrap_ content
android: completionHint-"输入信息..
android: compl et ionThreshold-" 1
android: popupTheme=@color/cardview dark_ background"
>
</AutoCompleteTextView>

tv=findVi ewById(R. id.autv);
//创建数据源适配器
ArrayAdapter adapter=new
ArrayAdapter (MainActivity. this , android.R.layout.simple. list. item_ 1, data);
//适配器
tv.setAdapter (adapter);

Spinner:下拉列表
●Spinner提供了从一个数据集合中快速选择一项值的办法。默认情况下Spinner显示的是当前选择的值,点击Spinner会弹出一个包含所有可选值的
●dropdown菜单,从该菜单中可以为Spinner选择一个新值。
●Spinner点击事件: setOnI temSel ectedListener()
●android:entries数据源
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值