- 浏览: 272992 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
tonytony3:
THANK YOU
Android多级树形菜单的实现 -
haiyang08101:
deleteNumber = "421f481e-7 ...
java对xml文件做增删改查 -
求求你帮帮我:
怎么把我的空格也当成节点处理了?
java对xml文件做增删改查 -
求求你帮帮我:
deleteNumber = "421f481e-7 ...
java对xml文件做增删改查 -
lpj13579:
多谢分享,学习学习
高仿小米盒子UI效果实现
public class AppInfo{ public String appName = null;//应用程序名 public Drawable icon = null;//应用程序图片 }
import java.util.List; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView; public class ListViewAdapter extends BaseAdapter{ private Context context; private List<AppInfo> appList; public ListViewAdapter(Context context, List<AppInfo> appList) { this.context = context; this.appList = appList; } @Override public int getCount() { // TODO Auto-generated method stub return appList.size(); } @Override public Object getItem(int position) { // TODO Auto-generated method stub return appList.get(position); } @Override public long getItemId(int position) { // TODO Auto-generated method stub return 0; } @Override public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub View view = null; ViewHolder holder = null; LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); if (convertView == null) { view = inflater.inflate(R.layout.list_item, null); holder = new ViewHolder(view); view.setTag(holder); } else { view = convertView; holder = (ViewHolder) convertView.getTag(); } AppInfo appInfo = (AppInfo)getItem(position); holder.tvInfo.setText(appInfo.appName); holder.imgInfo.setImageDrawable(appInfo.icon); return view; } class ViewHolder { TextView tvInfo; ImageView imgInfo; public ViewHolder(View view) { tvInfo = (TextView) view.findViewById(R.id.tv01); imgInfo = (ImageView) view.findViewById(R.id.img01); } } }
import android.app.Activity; import android.app.AlertDialog; import android.content.pm.PackageInfo; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.ImageButton; import android.widget.ListView; import java.util.*; public class MyActivity extends Activity { private ListView listView = null; private List<AppInfo> appList = new ArrayList<AppInfo>(); private List<PackageInfo> manager = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); listView = (ListView) findViewById(R.id.mylist); manager = getPackageManager().getInstalledPackages(0); for (int i = 0; i < manager.size(); i++) { PackageInfo packageInfo = manager.get(i); //应用程序信息存储到appinfo里 AppInfo appInfo = new AppInfo(); appInfo.appName = packageInfo.applicationInfo.loadLabel(getPackageManager()).toString(); appInfo.icon = packageInfo.applicationInfo.loadIcon(getPackageManager()); appList.add(appInfo); } ListViewAdapter adapter = new ListViewAdapter(this, appList); listView.setAdapter(adapter); } }
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ImageView android:id="@+id/img01" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <TextView android:id="@+id/tv01" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout>
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ListView android:id="@+id/mylist" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> </LinearLayout>
发表评论
-
Android 三大图片加载框架比较
2016-11-30 10:31 10901.哪三大图片加载框架? 1) Pi ... -
仿微信小视屏拍摄的进度条/自定义的progressBar的样式。
2016-08-20 00:25 1027今天有个需求,就是需要倒计时的进度条,样式参考微信小视屏拍摄 ... -
android 闹钟定时任务 AlarmManager
2016-06-02 13:41 1829直接上代码 package com.exampl ... -
android应用实现重启系统
2016-06-02 13:33 35271.在AndroidManifest.xml文件的manif ... -
android 每天定时提醒功能实现
2016-06-01 22:42 0android要实现定时的功 ... -
Java Calendar 类的时间操作
2016-06-01 21:02 670ava Calendar 类时间操作,这也许是创建日历和管理 ... -
android中fragment和activity之间相互通信
2014-11-13 16:25 1443在用到fragment的时候,老是会遇到一个问题,就是fra ... -
墨迹天气上下滑动viewpager
2014-11-04 17:15 762墨迹天气上下滑动viewpager -
Android杂谈--打开文件的Intent及使用
2014-10-25 13:03 647在写文件管理系统时会用到各种打开不同格式的文件的需求,由于A ... -
获取Android签名证书的sha1值
2014-08-23 23:14 666前言:今天开始研 ... -
java中Keytool的使用总结
2014-08-23 22:40 562J2SDK提供了keytool命令行工具,可以根据指定的参数 ... -
android获取versionName和versionCode
2014-07-08 18:02 739<TextView android:textSize= ... -
Android如何防止apk程序被反编译
2014-07-08 17:22 708作为Android应用开发者,不得不面对一个尴尬的局面,就是 ... -
在GridView中实现单选或多选功能
2014-06-26 13:08 846由于项目需要,要用到GridView实现多选功能,在网上搜 ... -
Android中Tween动画和Frame动画实例
2014-06-26 10:46 727Animation主要有两种动画模式:Tween动画和Fra ... -
android 禁用和开启四大组件的方法(setComponentEnabledSetting )
2014-06-19 15:26 0为什么要关闭组件? 在用到组件时,有时候我们可能暂时性的不使 ... -
android MD5校验码的生成与算法实现
2014-06-17 10:58 889在Java中,java.security.Mes ... -
android 自动检测版本升级
2014-06-15 14:10 387这里我用别的app代替了,简单省事,正常的话,你要对你的 ... -
layout左右平滑控制.
2014-04-30 09:41 617<?xml version="1.0&quo ... -
android让你的TabHost滑动起来
2014-04-22 22:13 820在Android应用中,一般TabActivity和若干个T ...
相关推荐
通过这种方式,你可以灵活地展示各种类型的数据,并且可以通过扩展Adapter来实现更复杂的功能,如点击事件、长按事件等。在实际项目中,还可以结合AsyncTask或其他异步加载机制,实现数据的动态加载和更新,提升用户...
可能是展示自定义BaseAdapter在实际应用中的截图,显示了适配器如何将数据呈现到屏幕上的视图组件中,比如ListView的各个条目。 通过以上所述,我们可以理解自定义BaseAdapter在Android开发中的重要性和实现方式,...
本篇文章将深入探讨如何自定义`BaseAdapter`,以实现更高效、更灵活的数据展示。 首先,理解`BaseAdapter`的作用至关重要。`BaseAdapter`是Android提供的一个抽象类,它实现了`ListAdapter`接口,主要用于为各种...
在给定的标题“自定义AutoCompleteTextView下拉列表控件”中,我们可以理解为开发者想要超越Android原生`AutoCompleteTextView`的功能,创建一个更加定制化的版本,以满足特定需求。描述中提到“扩展Android系统自带...
通过以上步骤,我们就能利用BaseAdapter实现一个功能完备、交互流畅的仿iOS侧滑菜单。在实际项目中,还可以结合其他组件和设计模式,如Fragment来更好地管理菜单和主要内容视图的交互,提升应用的用户体验。
本实例将聚焦于“实现列表功能的实例”,并讨论如何创建一个用户可自定义的列表,以适应不同用户的需求。 首先,我们需要理解列表框(ListBox)的概念。列表框是一种用户界面控件,通常用于显示一组可选择的项目。...
以上就是如何在不使用ArrayAdapter的情况下,通过继承BaseAdapter实现ListView的过滤功能。这个过程涉及到了数据源管理、过滤逻辑的实现以及适配器与ListView之间的通信,是一个比较全面的Android组件定制案例。通过...
综上所述,实现一个类似QQ分组列表的多级树功能,需要结合数据模型、自定义Adapter、视图复用机制以及交互逻辑等多个方面进行开发。尽管ListView和RecyclerView有各自的实现方式,但核心思想是一致的,都是为了有效...
1. 自定义列表项布局:包含一个`ImageView`显示图标,`TextView`展示名称和描述,以及`WebView`展示评分等复杂内容。 2. 数据模型:每个应用作为一个对象,包含图标、名称、描述和HTML格式的评分信息。 3. 自定义`...
然而,为了提供更好的用户体验,开发者经常需要对其进行自定义,例如实现滑动显示删除按钮的功能。这个功能在很多应用中都可以看到,比如邮件客户端,用户滑动邮件条目时,会显示出一个删除按钮,方便快速清理不需要...
BaseAdapter提供了四个主要的抽象方法,开发者需要重写这些方法以实现自定义功能: 1. `getCount()`: 这个方法返回列表中的条目总数。你需要根据实际数据源的大小返回正确的数值。 2. `getItem(int position)`: 此...
在创建自定义BaseAdapter时,你需要继承BaseAdapter并实现以上方法。首先,你需要创建一个包含数据的列表,可以是ArrayList或其他集合类型。然后,为每个列表项创建一个布局,并在`getView()`方法中设置相应的数据。...
本篇将详细讲解如何通过继承BaseAdapter来实现ListView的功能,这对于初学者来说是非常重要的基础知识。 1. **ListView的基本概念** - ListView是Android中的一个可滚动视图,它能显示一行行的数据,并且可以在...
通过这个示例,开发者可以学习如何利用`BaseAdapter`自定义数据源,结合`Gallery`组件,创建一个功能丰富的图片浏览应用。同时,这也是Android开发中数据驱动视图的经典案例,对于理解Android的UI设计模式有着重要的...
本文将深入探讨BaseAdapter的实现原理,包括其核心功能、工作流程以及如何自定义BaseAdapter。 1. **BaseAdapter的基本结构** BaseAdapter是一个抽象类,它实现了Adapter接口,并提供了与数据源交互的方法。在...
总结一下,`baseAdapter` 是一种自定义的适配器实现,用于`RecyclerView`,它结合了`Adapter` 和`ViewHolder` 的概念,以提供更高效的列表渲染和更方便的开发体验。在`RecyclerView` 中使用自定义适配器能够更好地...
本篇文章将详细探讨如何通过自定义ListView来实现单选功能,旨在帮助开发者解决这一问题。 一、自定义ListView的必要性 系统自带的ListView默认并未提供单选模式,而是多选或全选。当用户需要在列表中选择一个项目...
在Android开发中,ListView是一种常用的控件,用于展示大量数据列表。...在实际开发中,这有助于实现更丰富的交互功能,如删除、编辑列表项等。记住,理解ListView的复用机制以及如何正确处理点击事件是关键。
- RecyclerView是后来推出的更灵活的列表组件,虽然不直接继承自BaseAdapter,但可以通过AdapterView的抽象父类实现类似功能。 7. **最佳实践** - 数据源的变化应该触发Adapter的`notifyDataSetChanged()`方法,...
然而,通常情况下,自定义BaseAdapter会涉及到以下几个步骤: - 继承BaseAdapter类。 - 实现四个核心方法:getCount()、getItem(int position)、getItemId(int position)和getView(int position, View convertView, ...