阶段一:进行界面布局(如下图所示)
Main.xml具体代码如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/bg">
<GridView
android:id="@+id/imagelist"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:horizontalSpacing="20dp"
android:numColumns="2"
android:verticalSpacing="10dp" >
</GridView>
<ImageView
android:id="@+id/imageshow"
android:layout_marginTop="20dp"
android:scaleType="centerInside"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
新建Android XML Layout File,命名为:Grid.xml.具体代码如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/smallImage"
android:layout_width="80dp"
android:layout_height="50dp"/>
<TextView
android:id="@+id/desciption"
android:layout_width="80dp"
android:layout_height="wrap_content"
android:gravity="center"
android:textColor="#FFFFFF"/>
</LinearLayout>
阶段二:编写MainActivity,查找组件并进行事件处理。具体代码如下:
package com.lks.imageshow;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
public class MainActivity extends Activity {
private GridView imageList;
private ImageView imageShow;
private TextView description;
private int[] pics;
private String[] descs=new String[6];
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
imageList=(GridView) findViewById(R.id.imagelist);
imageShow=(ImageView) findViewById(R.id.imageshow);
description=(TextView) findViewById(R.id.desciption);
pics=new int[]{R.drawable.image1,R.drawable.image2,R.drawable.image3,R.drawable.image4,R.drawable.image5,R.drawable.image6};
for(int i=0;i<descs.length;i++){
descs[i]="图片"+(i+1);
}
List<Map<String,Object>> pic_items=new ArrayList<Map<String, Object>>();
for(int i=0;i<pics.length;i++){
Map<String,Object> item=new HashMap<String, Object>();
item.put("pic", pics[i]);
item.put("desc",descs[i]);
pic_items.add(item);
}
SimpleAdapter adapter=new SimpleAdapter(this, pic_items, R.layout.grid, new String[]{"pic","desc"}, new int[]{R.id.smallImage,R.id.desciption});
imageList.setAdapter(adapter);
imageShow.setImageResource(pics[0]);
imageList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapter, View view, int position,
long id) {
imageShow.setImageResource(pics[position]);
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
运行结果显示:
分享到:
相关推荐
主要介绍了Android编程UI设计之GridView和ImageView的用法,结合实例形式较为详细的分析了Android中GridView和ImageView组件的相关方法使用技巧,需要的朋友可以参考下
本文实例讲述了Android开发之组件GridView简单使用方法。分享给大家供大家参考,具体如下: 案例:简单的图片浏览器,保存图片到相册 保存图片到相册 方法代码:https://www.jb51.net/article/158668.htm 废话不多...
Android 超多基础组件使用范例技巧大全,这些组件大多与日常的Android编程息息相关,且更多 的时候是一种UI界面的必备元素,这些必备元素控件包括了以下内容:AutoCompleteTextView、CheckBox、CopyOfTimePicker、...
5.1.1 图片视图(ImageView) 5.1.2 滚动视图(ScrollView) 5.1.3 网格视图(GridView) 5.1.4 列表视图(ListView) 5.1.5 切换图片(ImageSwitcher和Gallery) 5.1.6 标签切换(Tab) 5.2 通用XML属性 第6章 ...
要与 ListView 或 GridView 等回收视图一起使用,请使用基于着色器的实现。 如何使用 Gradle依赖: compile ' com.github.siyamed:android-shape-imageview:0.9.+@aar ' ###Shader 基于 ImageView 的 ####...
2.3.2 按钮(Button)与图片按钮(ImageButton)组件的功能和 用法 66 2.3.3 使用9Patch图片作为按钮背景 68 2.3.4 单选按钮(RadioButton)和复选 框(CheckBox)介绍与应用 69 2.3.5 状态开关按钮...
2.3.2 按钮(Button)与图片按钮(ImageButton)组件的功能和 用法 66 2.3.3 使用9Patch图片作为按钮背景 68 2.3.4 单选按钮(RadioButton)和复选 框(CheckBox)介绍与应用 69 2.3.5 状态开关按钮(ToggleButton)...
2.3.2 按钮(Button)与图片按钮(ImageButton)组件的功能和 用法 66 2.3.3 使用9Patch图片作为按钮背景 68 2.3.4 单选按钮(RadioButton)和复选 框(CheckBox)介绍与应用 69 2.3.5 状态开关按钮(ToggleButton)...
5.2.19使用图片视图——ImageView 5.2.20实例——ImageView的重叠效果 5.2.21 使用网格视图——GridView 5.2.22实例——通过宫格视图展示相应的应用 5.2.23 使用消息提醒——Toast 5.2.24实例——Toast的4种实现 5.3...
5.2.19使用图片视图——ImageView 5.2.20实例——ImageView的重叠效果 5.2.21 使用网格视图——GridView 5.2.22实例——通过宫格视图展示相应的应用 5.2.23 使用消息提醒——Toast 5.2.24实例——Toast的4种实现 5.3...
16.3.3 使用Camera实现2D图像的深度效果 16.3.4 探索AnimationListener类 16.3.5 关于变换矩阵的一些说明 16.4 资源 16.5 小结 第17章 地图和基于位置的服务 17.1 地图包 17.1.1 从Google获取...
16.3.3 使用Camera实现2D图像的深度效果 16.3.4 探索AnimationListener类 16.3.5 关于变换矩阵的一些说明 16.4 资源 16.5 小结 第17章 地图和基于位置的服务 17.1 地图包 17.1.1 从Google获取...
5.4 使用显式意图激活组件的多种方式 44 5.5 Activity的六种传值方式 45 6.1 Task与BackStack概念 53 6.2 Activity的启动模式 54 6.3 Intent 六大属性 55 6.4 IntentFilter 意图过滤器 57 7.1 Android中进程的生命...
13.4、使用WebView视图显示网页: 13.5、使用WebService进行网络编程: 第14章、管理Android手机桌面 14.1、管理手机桌面: 14.2、改变手机壁纸: 14.3、桌面快捷方式: 14.4、管理桌面小控件: 14.5、实时...
13.4、使用WebView视图显示网页: 13.5、使用WebService进行网络编程: 第14章、管理Android手机桌面 14.1、管理手机桌面: 14.2、改变手机壁纸: 14.3、桌面快捷方式: 14.4、管理桌面小控件: 14.5、实时...
7.3.15 图片视图(ImageView)介绍与应用 7.3.16 图片按钮(ImageButton)介绍与应用 7.3.17 切换图片(ImageSwitcher&Gallery) 7.3.18 网格视图(GridView)介绍与应用 7.3.19 标签(Tab)介绍与应用 7.4 友好的菜单——menu...
7.3.15 图片视图(ImageView)介绍与应用 7.3.16 图片按钮(ImageButton)介绍与应用 7.3.17 切换图片(ImageSwitcher&Gallery) 7.3.18 网格视图(GridView)介绍与应用 7.3.19 标签(Tab)介绍与应用 7.4 友好的菜单——menu...