androidgridview加载
Ⅰ 实现android系统中ListView和Gridview两个布局之间点击跳转的操作方法有哪些
1. 首先,如下所示,将GridView和ListView布局到同一个页面中;
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView
android:id="@+id/app_title"
android:layout_width="fill_parent"
android:layout_height="44dip"
android:text="@string/main_service_title"
android:gravity ="center"
android:textSize="27px"
android:textColor="#ffffff"
android:background ="@drawable/title_bar"/>
<GridView
android:id="@+id/app_grid"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:padding="10dp"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:numColumns="4"
android:columnWidth="60dp"
android:stretchMode="columnWidth"
android:gravity="center"/>
<ListView
android:id="@+id/app_list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:divider="@drawable/divider"/>
</LinearLayout>
Ⅱ 如何设置 android gridview 怎么设置 , 一些item可以点击,另外.....
这个要在代码中进行设置,基本上有两种方式:
在GridView所在的 activity(或者fragment)中, 找到该View,监听点击事件:
java">gridView.setOnItemClickListener(newAdapterView.OnItemClickListener(){
@Override
publicvoidonItemClick(AdapterView<?>parent,Viewview,intposition,longid){
//点击item触发,进行判断,如果需要处理点击,就进行处理,否则,什么也不做
if(/*处理点击条件*/){
//要做的事
}
}
});在自己写的GridView对应的适配器中(一般继承于BaseAdapter)的getView中进行判断,如果是需呀处理的item, 就调用setOnClickListener,并定义相应的点击事件,否则可以不绑定点击事件。
Ⅲ Android获取到手机应用图标并显示在GridView中。现在想通过点击相应图标进入对应应用程序,应该怎么样实现
这个很简单,给你主要代码
PackageManager pm = getPackageManager(); // 得到PackageManager对象
// List<ApplicationInfo> packs = pm.getInstalledApplications(0); //
// 得到系统安装的所有程序包的PackageInfo对象
List<PackageInfo> packs = pm.getInstalledPackages(0); // 得到用户安装的所有程序包的PackageInfo对象
for (PackageInfo pi : packs) {
map = new HashMap<String, Object>();
// 显示用户安装的应用程序,而不显示系统程序
if ((pi.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 0
&& (pi.applicationInfo.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) == 0) {
// 这将会显示所有安装的应用程序,不包括系统应用程序
/**
* 获得文件大小 publicSourceDir获得路径,再通过该路径创建一个文件new File(String dir),
* 得到该文件长度除以1024则取得该应用的大小。
* 取得程序大小,通过application的publicSourceDir获得。
* 取得程序时间,通过application的SourceDir获得。
*/
String dir = pi.applicationInfo.publicSourceDir;
int size = Integer.valueOf((int) new File(dir).length());
long date = new Date(new File(dir).lastModified()).getTime();
map.put("appName", pi.applicationInfo.loadLabel(pm));// 应用程序名称
map.put("icon", pi.applicationInfo.loadIcon(pm));// 图标
map.put("versionName", "版本 :" + pi.versionName);// 应用程序版本\
map.put("appSize2", size);// 应用程序大小
map.put("packages", pi.applicationInfo.packageName); // 应用程序包名
map.put("appSize", "大小 :" + ToSzie(size));// 应用程序大小
map.put("appDate", date);// 应用程序时间
items.add(map);
}
}
启动 :
String path ="package:"+v.getTag();
Uri packageURI = Uri.parse(path);
Intent uninstallIntent = new Intent(this packageURI);
context.startActivity(uninstallIntent);
Ⅳ Android开发gridview功能
parent.getAdapter().getItem(position)
parent.getItemAtPosition(position)
这两个方法都行,返回Object类型,你可以进行一下转型
注:如果你看源码的话会发现其实都是用adapter.getItem(position) 获得的
Ⅳ Android中gridview 修改后 立即刷新数据
adapter.notifyDataSetChanged();就是刷新列表的意思,调用这行代码后,adapter会重新调用一次adapter的getView方法,来重新绘制列表,因此刷新列表只能刷新所有,不能单个,建议使用自定义的Adapter,SimpleAdapter 使用太麻烦,提供的api太少,数据处理也困难。
Ⅵ android的gridview加载图片一多了就卡,甚至程序OMM溢出
造成这个的原因可能有几个方面:
1、图片的体积过大,导致加载几张就可能oom,解决办法是优化图片以后再加载
2、在android3.0以下的机器上,bitmap资源需要自己手动释放,就是需要自己监听滑动事件释放不在屏幕中图片所在的资源
不过实际项目开发中,一般用的都是第三方的图片加载框架,图片池、异常的捕获和处理等都处理好了,推荐使用Glide即可
Ⅶ android GridView 的一个问题,我想把gridview设置成日历,4行7列,怎么实现
首先Gridview,设置numcols=7,然后设置每页的size为4*7 ,这样能够保证每页就是4行7列。 然后就是隐藏textview的问题了,这个实现就有多种方法了。 可以自定一个SurfaceView,在这个SurfaceView中添加textview,当然也可以直接,只是多加一层(遮罩层)。要控制好隐藏很简单visibility的Gone和visible就行了。看你的Item的xml布局写的如何了。 要隐藏和显示可以添加淡入淡出或者其他的动画效果。