- 浏览: 323304 次
- 性别:
- 来自: 苏州
文章分类
- 全部博客 (228)
- ArcGis (4)
- UI设计 (32)
- SQLite (7)
- ListView (12)
- Handler_Thread (6)
- XML (5)
- Menu (7)
- TabHost (6)
- Inflater (2)
- Activity (5)
- SDCard (3)
- Dialog (7)
- Spinner (3)
- 设备信息 (2)
- 资源文件 (7)
- 多媒体 (7)
- 图片浏览 (5)
- 工具的使用 (3)
- Animation动画 (7)
- GIS (14)
- 软件发布 (4)
- GPS (2)
- 手机Feature开发 (6)
- 加密解密 (1)
- Time (2)
- JWeb (5)
- SQL (2)
- PhoneGap (3)
- JavaScript (3)
- Object-C入门 (7)
- Oracle (1)
- AutoCompleteTextView (1)
- APN (1)
- IOS开发 (12)
- 数据库工具 (3)
- UITableView (0)
- Arcgis for iOS (1)
最新评论
-
waterM:
...
DBVis 连接数据库配置 -
航空母舰:
上源码吧,差资源,都跑不起来!
ListView_split 分割 -
wade200:
学习了
启动另一个Activity并返回结果(附源码) -
AndLi:
里面的坐标被我写死了啊,你注释掉就可以了
GPS定位 -
kunlinchen2010:
求指教,QQ:446482624
GPS定位
public class Main extends Activity implements OnItemClickListener { private ListView listView;// 装载缩小的图片 private ImageAdapter imageAdapter; public static int imagePosition;// 图片的下标 public static Uri[] imageUri;// 图片的URL public static List<String> imagePaths;// 存放图片路径的List public String fileName[]; Bitmap bitmap = null;// 原位图 Bitmap smallbitmap = null;// 缩小的位图 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); setTitle("相册浏览——ListView"); setTitleColor(Color.YELLOW); setContentView(R.layout.main); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setProgressBarIndeterminateVisibility(true);// 显示标题栏的进度圈 initView();// 初始化 final Object data = getLastNonConfigurationInstance();// 得到横屏时临时存储的数据 if (data == null) {// 为空重新加载 new getImagesFromSD().execute(); } else { final LoadedImage[] photos = (LoadedImage[]) data; if (photos.length == 0) { new getImagesFromSD().execute(); } for (LoadedImage photo : photos) { addImage(photo); } } } // 初始化 private void initView() { imagePaths = Utils.getImagePathFromSDCard();// 获得图片路径 listView = (ListView) findViewById(R.id.test_lv); imageAdapter = new ImageAdapter(getApplicationContext()); listView.setAdapter(imageAdapter); } private void addImage(LoadedImage... value) { for (LoadedImage image : value) { imageAdapter.addPhoto(image);// 把图片添加到适配器里面,以便调整图片的属性 imageAdapter.notifyDataSetChanged(); } } // 读取sdcard上的图片 class getImagesFromSD extends AsyncTask<Object, LoadedImage, Object> { protected Object doInBackground(Object... params) { imageUri = new Uri[imagePaths.size()];// 声明imageUri的长度 for (int i = 0; i < imagePaths.size(); i++) { String path = imagePaths.get(i); BitmapFactory.Options options = new BitmapFactory.Options(); options.inSampleSize = 5; bitmap = BitmapFactory.decodeFile(path, options); if (bitmap != null) { smallbitmap = Bitmap.createScaledBitmap(bitmap, 60, 60, true);// 将原来的位图缩小 bitmap.recycle();// 释放内存 if (smallbitmap != null) { publishProgress(new LoadedImage(smallbitmap)); } } } return null; } @Override public void onProgressUpdate(LoadedImage... value) { addImage(value); } // 当加载完时停止标题栏的进度圈 @Override protected void onPostExecute(Object result) { setProgressBarIndeterminateVisibility(false); } } // 自定义图片适配器 class ImageAdapter extends BaseAdapter { private Context mContext; private ArrayList<LoadedImage> photos = new ArrayList<LoadedImage>(); public ImageAdapter(Context context) { mContext = context; } public void addPhoto(LoadedImage photo) {// 把图片添加到数组 photos.add(photo); } public int getCount() {// 得到图片数量 return photos.size(); } public Object getItem(int position) { return photos.get(position); } public long getItemId(int position) { return position; } public View getView(int position, View convertView, ViewGroup parent) { LinearLayout linearLayout = new LinearLayout(mContext);// 创建LinearLayout linearLayout.setOrientation(LinearLayout.HORIZONTAL); linearLayout.setPadding(10, 2, 2, 2); linearLayout.setGravity(Gravity.LEFT); ImageView imageView = new ImageView(mContext); // 创建ImageView imageView.setAdjustViewBounds(true); imageView.setScaleType(ImageView.ScaleType.CENTER); imageView.setPadding(2, 2, 2, 2);// 控制图片距离窗口的位置 imageView.setImageBitmap(photos.get(position).getBitmap()); TextView textView = new TextView(mContext);// 创建TextextViewiew textView.setPadding(10, 2, 2, 2); textView.setTextSize(17); textView.setTextColor(Color.YELLOW); textView.setLayoutParams(new LinearLayout.LayoutParams( LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); textView.setText(Utils.getName(imagePaths.get(position))); // 设置TextextViewiew显示的内容 linearLayout.addView(imageView); // 将ImageView添加到线性布局中 linearLayout.addView(textView);// 将textView添加到线性布局中 return linearLayout; } } // 加载图片 private static class LoadedImage { Bitmap mBitmap; LoadedImage(Bitmap bitmap) { mBitmap = bitmap; } public Bitmap getBitmap() { return mBitmap; } } // 图片点击监听 public void onItemClick(AdapterView<?> parent, View v, int position, long id) { imagePosition = position;// 把图片位置赋给静态变量imagePosition,方便后面调用 // Intent intent = new Intent(Main.this, GalleryImage.class);// 跳转到大图浏览 // startActivity(intent); } }
发表评论
-
AysncTask异步加载图片
2012-01-03 16:24 1651package com.lilin.async; imp ... -
ListView_Syncpic 以异步形式加载图片
2011-12-22 20:55 796ListView形式预览图片:以异步形式加载图片 -
ListView_HS 实现水平+垂直双向滚动
2011-12-22 20:47 1330<?xml version="1.0&q ... -
ListView_split 分割
2011-12-13 09:16 1295/** * 主界面 * ... -
ListView和CheckBox整合:分别响应对应的事件
2011-12-05 20:17 5677核心代码: // ListView的单击事件 imgL ... -
ListView 自定义Adapter
2011-10-20 22:01 939public class PriceListAdapter e ... -
ListView 非自定义Adapter
2011-10-20 10:05 743public class ReportPriceListAct ... -
ListView 和Button的结合
2011-10-15 09:10 929public class Main extends Ac ... -
ListView 分页 点击按钮加载实现
2011-10-15 09:10 711滴答滴答滴答滴答 -
ListView 分页 上一页,下一页的形式实现
2011-10-15 09:11 874分页实现 -
通过注册OnTouchListener,来实现多点触控
2011-10-15 09:11 2276public class Main extends Activ ... -
通过自定义ImageView来实现多点触控
2011-10-16 14:23 3098public class Main extends Activ ... -
gridview+gallery 实现图片的预览
2011-10-16 14:23 1100先是通过gridview实现图片的预览,再通过gallery浏 ... -
extends ListActivity
2011-10-02 10:26 2371package com.epoint.listview; ... -
ListView and CheckBox
2011-09-30 09:41 1104main.xml <?xml version=&q ...
相关推荐
- 打印预览通常需要先将ListView控件的内容转换为适合打印的格式,如文本或图片。 - 可以使用Graphics对象绘制ListView到Bitmap,从而创建一个可打印的图像版本。 - 使用PrintDocument控件处理实际的打印任务,...
通过设置 `ListView` 的属性、定义数据结构、填充数据以及自定义绘制逻辑,可以实现在列表视图中以图标形式展示照片的功能。这种方法不仅可以提高用户界面的美观度,还能有效提升用户体验。希望本文能够帮助开发者更...
这通常通过在ListView项模板中嵌入多个控件,如Image(用于显示预览图片)和Label(用于显示文字数据)来实现。这样的设计可以提高用户体验,因为用户能够在不打开详情页的情况下获取更多的信息。 要实现这样的功能...
这样,用户在浏览列表时能快速预览每个新闻的图片,而不需要打开详情页。 实现这种设计通常需要以下步骤: 1. **创建自定义Adapter**:继承自BaseAdapter,重写`getView()`方法,返回一个包含GridView的View。在...
本项目"**C#实现图片个性化预览**"旨在创建一个能够以小图标的形式预览文件夹下图片,并支持用户点击后进行单独浏览的应用程序。这个功能的实现主要依赖于C#编程语言以及.NET框架的相关组件,下面将详细讲解实现这一...
文件夹选择和图片预览** 在ListView中,每个文件夹条目可以是一个可点击的视图,点击后启动一个新的Activity,使用GridView展示选中文件夹的图片。可以使用Intent的ACTION_PICK或者ACTION_GET_CONTENT来打开相册并...
在Windows编程领域,ListView控件是经常被使用的组件,它允许开发者展示列表形式的数据,并提供多种视图模式,如小图标、大图标、列表和详细信息等。在某些情况下,可能需要将ListView控件的内容打印出来,比如报表...
这种布局方式常用于展示一系列相关的、横向排列的内容,如日历中的日期、照片应用中的图片预览等。 二、应用场景 1. 图片轮播:在许多应用的启动页或首页,常常可以看到图片轮播效果,这通常会用到水平ListView或...
本项目“聊天ListView”旨在实现一个类似微信聊天界面的功能,展示多种布局效果,包括文字、图片、语音消息等不同类型的聊天内容。在这个项目中,我们将探讨以下几个关键知识点: 1. **自定义Adapter**: - `...
4. 预览功能,对于图片、文本等常见类型的文件提供预览。 5. 高效的搜索功能,快速定位所需文件。 6. 可能还包含文件分享功能,让用户能够通过蓝牙、邮件或其他方式分享文件。 通过深入理解ListView的工作原理以及...
这通常需要根据文件类型来决定预览的方式,比如图片文件可以直接显示缩略图,文本文件则显示部分内容,而其他类型的文件可能需要借助外部组件或API来实现。 6. **图形界面设计**:为了提供良好的用户体验,图形界面...
在本实例中,我们将探讨如何将用户选择的图片显示在C#程序的ListView控件中,并同时展示图片...通过掌握这些知识点,开发者可以进一步学习如何扩展程序功能,例如添加图片预览、文件管理功能或实现更加复杂的用户交互。
这个列表视图的每个单元格应该包含一张预览图片、选择状态(例如勾选图标)以及可能的图片名称或日期等信息。图片的显示可以通过 glide、picasso 等库来优化加载速度和用户体验。 接着,为了允许用户从相册中选择...
9. **文件预览和选择**:文件管理器还可能包含文件预览功能,例如图片、音频、视频的预览。这需要适配各种文件类型的查看器,或者利用系统自带的媒体播放器。 10. **多选和剪贴板功能**:允许用户选择多个文件并...
描述中提到的“缩略显示”,是指在相册中以小图形式预览图片,这通常需要用到`Bitmap`类来加载和处理图片。由于原始图片可能较大,直接加载可能导致内存问题,所以通常会使用`BitmapFactory`的`decodeStream`或`...
在OpenERP/Odoo中,列表视图是一种常见的数据展示方式,它以表格的形式列出数据库中的记录,方便用户快速浏览和操作大量数据。 3. **模块化设计**: OpenERP/Odoo的一大特点是模块化的系统设计,用户可以根据需求...
- JSON常用于封装上传请求的数据,包括图片的Base64编码字符串或其他形式的二进制数据。使用Gson或Jackson库可以方便地处理JSON序列化和反序列化。 6. **进度条反馈**: - 在上传过程中,显示进度条是提高用户...
2. **ListView打印**:ListView控件通常用来显示列表或表格形式的数据。打印ListView涉及到转换控件中的视图到适合打印的格式。可以先将ListView的内容导出为文本或表格,再利用PrintDocument的PrintPage事件来绘制...
这个时候用ListView的话就显得不是太合适了,因为ListView的展现形式毕竟不适合这种预览要求,那么通过什么视图组件可 以实现呢?这里就可以使用GridView,android中的网格布局来实现了。 GridView控件用于把一系列...
通过请求权限、启动相机预览、捕获图像、处理图片文件等步骤,可以实现应用内的拍照功能。 4. **Service**:Service是Android中的一种后台运行组件,可以在用户不交互的情况下持续执行任务。例如,你可以创建一个...