MainActivity例如以下:

package cc.cv;

import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.app.Activity;
import android.content.Context;
/**
* Demo描写叙述:
* HorizontalScrollView的简单使用
*
* 在Google文档中Gallery已经弃用.推荐使用HorizontalScrollView和ViewPager.
* ViewPager用过不少,HorizontalScrollView倒是非常少使用.所以在此学习.
*
* Demo说明:
* 1 布局文件非常easy,在HorizontalScrollView中嵌套了一个LinearLayout
* 2 在代码中仅仅需将自己定义的View加入到LinearLayout中就可以.
* 这样就能够实现水平滑动了.
*
*/
public class MainActivity extends Activity {
private Context mContext;
private int [] mPhotosIntArray;
private LayoutInflater mLayoutInflater;
private LinearLayout mGalleryLinearLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
initView();
initData();
} private void initView(){
mContext=this;
mGalleryLinearLayout=(LinearLayout) findViewById(R.id.galleryLinearLayout);
mLayoutInflater=LayoutInflater.from(mContext);
}
private void initData(){
mPhotosIntArray=new int[]{R.drawable.a,R.drawable.b,R.drawable.c,R.drawable.d,R.drawable.e,R.drawable.f,R.drawable.g,R.drawable.h};
View itemView=null;
ImageView imageView=null;
TextView textView;
for (int i = 0; i < mPhotosIntArray.length; i++) {
itemView=mLayoutInflater.inflate(R.layout.gallery_item, null);
imageView=(ImageView) itemView.findViewById(R.id.imageView);
textView=(TextView) itemView.findViewById(R.id.textView);
imageView.setImageResource(mPhotosIntArray[i]);
textView.setText("This is "+(i+1));
mGalleryLinearLayout.addView(itemView);
}
} }

main.xml例如以下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" > <HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="150dip"
android:layout_centerInParent="true"
android:scrollbars="horizontal" > <LinearLayout
android:id="@+id/galleryLinearLayout"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical" >
</LinearLayout> </HorizontalScrollView> </RelativeLayout>

gallery_item.xml例如以下:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content" > <ImageView
android:id="@+id/imageView"
android:layout_width="80dip"
android:layout_height="80dip"
android:layout_centerHorizontal="true" /> <TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/imageView"
android:layout_centerHorizontal="true"
android:layout_marginTop="8dip" /> </RelativeLayout>

HorizontalScrollView的使用演示样例的更多相关文章

  1. JDBC连接MySQL数据库及演示样例

    JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...

  2. java 覆盖hashCode()深入探讨 代码演示样例

    java 翻盖hashCode()深入探讨 代码演示样例 package org.rui.collection2.hashcode; /** * 覆盖hashcode * 设计HashCode时最重要 ...

  3. 模式识别 - 处理多演示样例学习(MIL)特征(matlab)

    处理多演示样例学习(MIL)特征(matlab) 本文地址: http://blog.csdn.net/caroline_wendy/article/details/27206325 多演示样例学习( ...

  4. java并行调度框架封装及演示样例

    參考资料:  阿里巴巴开源项目 CobarClient  源代码实现. 分享作者:闫建忠 分享时间:2014年5月7日 ---------------------------------------- ...

  5. Java连接redis的使用演示样例

    Java连接redis的使用演示样例 Redis是开源的key-value存储工具,redis通经常使用来存储结构化的数据,由于redis的key能够包括String.hash.listset和sor ...

  6. Introspector(内省)简单演示样例 与 简单应用

    简单演示样例: package com.asdfLeftHand.test; import java.beans.BeanDescriptor; import java.beans.BeanInfo; ...

  7. libcurl使用演示样例

    简要说明:C++使用libcurl訪问"www.baidu.com".获取返回码和打印出http文件 /* * @ libcurl使用演示样例 * @ 2014.04.29 * @ ...

  8. 构造Scala开发环境并创建ApiDemos演示样例项目

    从2011年開始写Android ApiDemos 以来.Android的版本号也更新了非常多,眼下的版本号已经是4.04. ApiDemos中的样例也添加了不少,有必要更新Android ApiDe ...

  9. OpenCV LDA(Linnear Discriminant analysis)类的使用---OpenCV LDA演示样例

    1.OpenCV中LDA类的声明 //contrib.hpp class CV_EXPORTS LDA { public: // Initializes a LDA with num_componen ...

随机推荐

  1. Kibana安装及简单使用

    Kibana安装 参照官方文档即可,这里只做相关操作记录: wget https://artifacts.elastic.co/downloads/kibana/kibana-5.5.0-linux- ...

  2. jps出现process information unavailable的问题

    jps出现process information unavailable(当然我ps -aux了,确定该进程是存在的),网上查找了原因,我的理解是这样: 因为jps的进程信息是存储在/tmp/hspe ...

  3. python os 用法(转)

    注:转自这里,仅作为方便个人查询使用 获取文件所在路径 import os os.path.dirname(__file__)  获取当前文件的所在路径 print (os.path.dirname( ...

  4. TradingView 为 k 线柱添加标记

    看别人翻译的开发文档: 开发文档地址:https://zlq4863947.gitbooks.io/tradingview/ getMarks(symbolInfo, startDate, endDa ...

  5. 模拟界面请求到web服务器

    客户端 package com.lsw.client; import java.io.*; import java.net.*; import java.util.*; public class HT ...

  6. 系统导出数据到excel,数据量过大(大约10W)条,导致服务器 cpu 100%解决方法

    系统导出数据到excel,数据量过大(大约10W)条,导致服务器 cpu 100%解决方法

  7. CentOS下的日志切割

    在Linux下,日志会不停的增长,为了防止日志文件过大,导致我们无法在日志中快速找到想要的信息,我们会定时对日志文件进行切割.在这里我将使用logrotate切割日志. (1).logrotate的配 ...

  8. [leetcode tree]98. Validate Binary Search Tree

    Given a binary tree, determine if it is a valid binary search tree (BST). Assume a BST is defined as ...

  9. iOS 11开发教程(一)

    iOS 11开发概述 iOS 11是目前苹果公司用于苹果手机和苹果平板电脑的最新的操作系统.该操作系统的测试版于2017年6月6号(北京时间)被发布.本章将主要讲解iOS 11的新特性.以及使用Xco ...

  10. 多套方案来提高python web框架的并发处理能力

    Python常见部署方法有 :   fcgi :用spawn-fcgi或者框架自带的工具对各个project分别生成监听进程,然后和http 服务互动 wsgi :利用http服务的mod_wsgi模 ...