当GridView中的一项被点中的时候显示的背景图片:android:listSelector="@drawable/choose_gridview"



GridView中的一项被点中的时候显示的背景图片:android:listSelector="@drawable/choose_gridview"

     android:numColumns="3" 指定GridView每一行的列数

     android:horizontalSpacing="10px" GridViewitem间的水平间隔

     android:verticalSpacing="10px"   GridViewitem间的垂直间隔

去除title: requestWindowFeature(Window.FEATURE_NO_TITLE);

全屏显示:

1、 获得这个ActivityWindow对象

a) Window win = getWindow()

2、 为这个Window对象设置flag

a) win.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN

WindowManager.LayoutParams.FLAG_FULLSCREEN);

为一个GridView设置适配器的过程

1、 为GridView的每一项准备一个布局文件

2、 写一个类继承BaseAdapter

i. 解释:一个类继承了BaseAdapter,需要重写几个方法,分别是getCount()getItem()getItemId()getView()

ii. 最重要的是getCountgetView方法。GridView中的每一项都是一个View。而这个View是通过getView获得的。当某一项需要显示的时候,它就会调用adapter中的getView方法获得需要展示的view。所以,这个GridView中有几项,就会调用几次getView方法,判断有几项,是通过getCount方法获得。所以在getCount中我们应该返回一个list的大小。在getView中,根据参数position获得list中位于position的某一个对象。通过LayoutInflater将布局文件渲染成一个view,再给这个view中的控件赋值

3、 关于PackageInfo

a) 获得系统中所有安装程序的信息,包括用户安装的和系统本身的:

i. 获得PackageManager   pm = getPackageManager()

ii. List list = pm.getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES)

b) PackageInfo封装了什么信息:可以理解为PackageInfo对应着一个Manifest文件,PackageInfoMinifest的文件进行了封装

i. 包名:packageName

ii. 版本信息:versionCodeversionName

iii. 这个包中的activity的信息

iv. 这个包中receiver的信息

v. 这个包中provider的信息

vi. 这个包中service的信息  都封装成xxxInfo,通过这个就可以得到相应的信息

vii. 还有可以获得applicationInfo

1. 获得应用程序的名称applicationInfo.loadLabel(getPackageManager)

2. 获得应用程序的图标(Drawable)

applicationInfo.loadIcon(getPackageManager)



原文地址:https://www.cnblogs.com/firecode/p/2460870.html