GridView
android:numColumns="auto_fit" 列数 自动设置
android:columnWidth="90dp" 列宽
android:verticalSpacing="10dp" 行间距
android:horizontalSpacing="10dp" 列间距
android:stretchMode="columnWidth" 缩放方式
package com.example.android_grid_layout; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.GridView; import android.widget.ImageView; public class MainActivity extends Activity { private GridView gv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); gv = (GridView)this.findViewById(R.id.gridView); ImageAdapter adapter = new ImageAdapter(); gv.setAdapter(adapter); } class ImageAdapter extends BaseAdapter{ private Integer[] mThumbIds = { R.drawable.sample_2, R.drawable.sample_3, R.drawable.sample_4, R.drawable.sample_5, R.drawable.sample_6, R.drawable.sample_7, R.drawable.sample_0, R.drawable.sample_1, R.drawable.sample_2, R.drawable.sample_3, R.drawable.sample_4, R.drawable.sample_5, R.drawable.sample_6, R.drawable.sample_7, R.drawable.sample_0, R.drawable.sample_1, R.drawable.sample_2, R.drawable.sample_3, R.drawable.sample_4, R.drawable.sample_5, R.drawable.sample_6, R.drawable.sample_7, R.drawable.sample_6, R.drawable.sample_7, R.drawable.sample_0, R.drawable.sample_1, R.drawable.sample_2, R.drawable.sample_3, R.drawable.sample_4, R.drawable.sample_5, R.drawable.sample_6, R.drawable.sample_7, R.drawable.sample_0, R.drawable.sample_1, R.drawable.sample_2, R.drawable.sample_3, R.drawable.sample_4, R.drawable.sample_5, R.drawable.sample_6, R.drawable.sample_7, R.drawable.sample_6, R.drawable.sample_7 }; @Override public int getCount() { return mThumbIds.length; } @Override public Object getItem(int position) { return mThumbIds[position]; } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ImageView imageView; if (convertView == null) { imageView = new ImageView(MainActivity.this); // 设置布局参数 大小尺寸 imageView.setLayoutParams(new GridView.LayoutParams(180, 180)); // 图片截取类型 imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); // 上下左右内边距 imageView.setPadding(1, 1, 1, 1); } else { imageView = (ImageView) convertView; } imageView.setImageResource(mThumbIds[position]); return imageView; } } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
图片带文字:
package com.example.android_grid_layout; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.GridView; import android.widget.ImageView; import android.widget.TextView; public class MainActivity2 extends Activity { private GridView gv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); gv = (GridView)this.findViewById(R.id.gridView); ImageAdapter adapter = new ImageAdapter(); gv.setAdapter(adapter); } class ImageAdapter extends BaseAdapter{ private Integer[] mThumbIds = { R.drawable.sample_2, R.drawable.sample_3, R.drawable.sample_4, R.drawable.sample_5, R.drawable.sample_6, R.drawable.sample_7, R.drawable.sample_0, R.drawable.sample_1, R.drawable.sample_2, R.drawable.sample_3, R.drawable.sample_4, R.drawable.sample_5, R.drawable.sample_6, R.drawable.sample_7, R.drawable.sample_0, R.drawable.sample_1 }; private String[] descs = { "描述1", "描述2", "描述3", "描述4", "描述5", "描述6", "描述7", "描述8", "描述9", "描述10", "描述11", "描述12", "描述13", "描述14", "描述13", "描述14" }; @Override public int getCount() { return mThumbIds.length; } @Override public Object getItem(int position) { return mThumbIds[position]; } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ImageView imageView; TextView textView; if (convertView == null) { convertView = getLayoutInflater().inflate(R.layout.grid_item, null); } imageView = (ImageView) convertView.findViewById(R.id.imageView1); textView = (TextView) convertView.findViewById(R.id.textView1); // 设置布局参数 大小尺寸 // imageView.setLayoutParams(new GridView.LayoutParams(90, 90)); // 图片截取类型 // imageView.setScaleType(ImageView.ScaleType.FIT_XY); // 上下左右内边距 // imageView.setPadding(1, 1, 1, 1); imageView.setImageResource(mThumbIds[position]); textView.setText(descs[position]); return convertView; } } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
相关推荐
G.layout() # 默认使用'dot'布局 G.draw('example.png') ``` 这将创建一个简单的有向图,包含两个节点'A'和'B',并有一条边连接它们,然后保存为'example.png'。 综上所述,"pygraphviz-1.9-cp38-cp38-win_amd64....
Its unique flat design and responsive layout is crafted one of a kind. SmartAdmin includes 7 version variations: Static HTML, AJAX, PHP, AngularJS 4.0, RubyOnRails, ReactJS and ASP.NET versions. Each...
G.layout() G.draw("example.png") ``` 这段代码会生成一个从"A"到"B"的有向边,并将图形保存为"example.png"。 `使用说明.txt`文件通常包含了详细的安装指南和库的使用方法,对于初学者来说是非常有价值的资源。...
6. **文档与源码**:提供的文件中,`designgridlayout-1.9-javadoc.jar`包含API文档,可以帮助开发者理解如何使用各种方法和类;`designgridlayout-1.9-sources.jar`则包含源代码,便于深入研究其内部实现和自定义...
本人花30RMB从淘宝购买的最新Color Admin1.9响应式后台模板,非常漂亮,代码完整!下面是模板预览地址! http://www.seantheme.com/color-admin-v1.9/admin/html/index.html Color Admin is the new premium and ...
Its unique flat design and responsive layout is crafted one of a kind. SmartAdmin includes 7 version variations: Static HTML, AJAX, PHP, AngularJS 4.0, RubyOnRails, ReactJS and ASP.NET versions. Each...
Its unique flat design and responsive layout is crafted one of a kind. SmartAdmin includes multiple variations: Static HTML, AJAX, PHP 5.3, Angular, RubyOnRails, ReactJS and ASP.NET Core 2. Each ...
### Layout API 帮助文档知识点详解 #### 一、概述 Layout API 是 layer 框架中的一个重要组成部分,主要用于创建各种弹出层、提示信息等界面交互元素。本帮助文档适用于 layer 1.9 及以上版本。如果你正在使用的...
4. **布局(Layout)**:Layout 用于创建多区域的页面布局,支持水平和垂直分割,以及面板的拖动和调整大小。它有助于组织复杂的应用界面,提高用户体验。 5. **菜单(Menu)**:菜单系统提供了一种方便的方式来...
Java GUI布局API是Java Swing和JavaFX中用于创建图形用户界面的重要组成部分。...通过深入研究如designgridlayout-1.9-sources.jar这样的源代码,开发者可以更深入地理解布局管理器的工作原理,并优化自己的UI设计。
Section 1.9. Styles and Control Templates Section 1.10. Graphics Section 1.11. Application Deployment Section 1.12. Where Are We? Chapter 2. Layout Section 2.1. Layout Basics
log4j.appender.Console.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n # 配置文件Appender log4j.appender.File=org.apache.log4j.DailyRollingFileAppender log4j.appender.File.File=./logs/app....
- 布局管理器(Layout Manager):自动调整控件的位置和大小,以适应不同屏幕尺寸和分辨率。 - 事件处理:提供事件监听机制,如点击、滚动、键盘输入等,方便开发者编写响应代码。 3. **图形渲染**: - ...
implementation 'com.jeremyfeinstein.slidingmenu:library:1.9@aar' } ``` 然后同步项目以引入依赖。 **3. 使用示例** 本示例源码中包含一个简单的Android应用,展示了如何在Activity中设置和使用SlidingMenu。...
SmartAdmin Layout API允许您为几乎任何设备自定义项目 - 无论是移动设备,Web还是WebApp - SmartAdmin都能满足您的需求!亲爱的用户,如果您尝试从1.9版升级到4.0版,请注意没有转换方法。SmartAdmin 4.0是一个彻底...
IE 插件 webcollect 1.9 最新版 已破解 ,请另行下载。 更新说明。 Version 6.0.7 1.Added: Organize - Batch redirect shortcuts, which helps update file paths for shortcuts when files are moved. 2.Added: ...
1.9. 坐标系统 193 1.9.1. 如何在ArcMap中设置地理坐标系和投影坐标系 193 1.9.2. 如何修改层的坐标系统 194 1.9.3. 如何把Polygon的顶点从经纬度坐标转换到平面直角坐标 196 1.10. ArcGis相关文件 198 1.10.1. 如何...
implementation 'com.slidingmenu:slidingmenu:1.9.+' // 使用最新版本 ``` 之后,同步项目并确保构建成功。 **配置SlidingMenu** 在Activity的onCreate方法中初始化SlidingMenu。以下是一个基本的设置示例: ``...
1. 引入库:将`designgridlayout-1.9.jar`添加到项目的类路径中。 2. 创建DesignGridLayout实例:`DesignGridLayout layout = new DesignGridLayout(parentContainer);` 3. 设置布局参数:`layout.rows(numRows)....
6. **布局管理**:Easyui的layout组件可以实现复杂的页面布局,包括面板(panel)的拖放、伸缩和嵌套,为创建响应式和动态布局提供了便利。 7. **Ajax和异步通信**:Easyui利用jQuery的Ajax功能,可以方便地实现...