Activity转换为View和把图片转换为View
package com.example.viewpager01;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.app.LocalActivityManager;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.widget.ImageView;
import android.widget.ImageView.ScaleType;
public class MainActivity extends Activity {
private ViewPager viewPager;
private List<View> viewList;
private View view1, view2, view3; //
//Context context = null;
LocalActivityManager manager = null; //这里要实现把Activity转换为View
private int[] ids = { R.drawable.guide_page_1, R.drawable.guide_page_2,R.drawable.guide_page_3 };//存放图片数组,这里要实现把图片转换为View
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.user_lader);
manager = new LocalActivityManager(this , true);
manager.dispatchCreate(savedInstanceState);
viewList=new ArrayList<View>();
for (int i = 0; i < ids.length; i++) {
ImageView iv = new ImageView(this);
iv.setImageResource(ids[i]);
ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(
ViewGroup.LayoutParams.FILL_PARENT,
ViewGroup.LayoutParams.FILL_PARENT);
iv.setLayoutParams(params);
iv.setScaleType(ScaleType.FIT_XY);
viewList.add(iv);
}
Intent intent = new Intent(getApplicationContext(), A.class);
viewList.add(getView("A", intent));
// 1,
viewPager = (ViewPager) findViewById(R.id.view_pager);
// 2,PageAdapter 必须重写的四个函数:
/*
* boolean isViewFromObject(View arg0, Object arg1) int getCount() void
* destroyItem(ViewGroup container, int position,Object object) Object
* instantiateItem(ViewGroup container, int position)
*/
viewPager.setAdapter(new PagerAdapter() {
@Override
public int getCount() {
if(viewList==null)
{
return 0;
}
else
{
return viewList.size(); //getCount():返回要滑动的VIew的个数
}
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
//return arg0 == arg1; //isViewFromObject():对于这个函数就先不做解说,大家眼下先知道它要这样重写即可了。后面我们会对它进行改写。
//System.out.println("position===isViewFromObject======"+(int)Integer.parseInt(arg1.toString())+(arg0 == viewList.get((int)Integer.parseInt(arg1.toString()))));
return arg0 == viewList.get((int)Integer.parseInt(arg1.toString()));////依据传来的key,找到view,推断与传来的參数View arg0是不是同一个视图
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
container.addView(viewList.get(position)); //做了两件事。第一:将当前视图加入到container中。第二:返回当前View
//return viewList.get(position);
//System.out.println("position===instantiateItem======"+position);
return position; // //把当前新增视图的位置(position)作为Key传过去
}
@Override
public void destroyItem(ViewGroup container, int position,
Object object) {
if(position==1)
{
viewList=null;
}
else
{
//System.out.println("position====destroyItem====="+position);
container.removeView(viewList.get(position)); //从当前container中删除指定位置(position)的View;
}
}
});
}
private View getView(String id, Intent intent) {
return manager.startActivity(id, intent).getDecorView();
}
}
Activity转换为View和把图片转换为View的更多相关文章
- android 开发 View _8_ 动态图片自定义View
转载地址:https://blog.csdn.net/mengks1987/article/details/77770922 先来看下效果: 是不是有一种熟悉感,其实这种效果使用序列帧动画也是可以实现 ...
- bug_ _图片_android.view.InflateException: Binary XML file line #1: Error inflating class <unknown>
=========== 1 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.zgan.communit ...
- Android View转换成图片保存
package zhangphil.viewtoimage; import java.io.File;import java.io.FileOutputStream; import android.o ...
- view保存为图片
一.概述 简书.微博.便签等都有将文章保存为图片的功能.笔者臆测,此功能的实现原理如下. 二.实现 2.1将View保存成Bitmap对象 方法1(亲测有效) private Bitmap makin ...
- windows+caffe(二)——图片转换为levedb格式
借鉴于langb2014的 http://blog.csdn.net/langb2014/article/details/50458520 与liukailun09的 http://blog.cs ...
- c# winform 把彩色图片转换为灰色的图片,变灰,灰度图片,速度很快,safe,unsafe
把彩色图片转换为灰色的图片,直接用.net接口遍历每个像素点转换的效率非常低,800K的图片65万像素我的电脑要用5分钟,而用了unsafe,速度提高了几千倍,同样的图片只用了0.几秒 附一个常用的遍 ...
- 设置一个View的背景图片的集中方法
控制器view的背景图片的方法, 四种: 1.直接在控制器view上添加一个imageView大小设置的和view一样 UIImageView *beijingimage = [UIImageView ...
- BMP图片转换为JPEG图片
原文:BMP图片转换为JPEG图片 昨天在家学习,发现很多人把BMP图片转换为其它图片格式,有些人写得简单,有些人写得复杂. Insus.NET在想,一直在做文件上传,下载,或是图片剪切,都有进行过文 ...
- 将图片转换为base64 格式
1.页面上的图片,转换成base64格式,可以通过canvas 的 toDataURL 例子:给定图片的url 将图片转换为base64 var imageSrc = "../images/ ...
随机推荐
- 玩具(toy)
题目 试题2:玩具(toy) 源代码:toy.cpp 输入文件:toy.in 输出文件:toy.out 时间限制:1s 空间限制:256MB 题目描述 商店正在出售小C最喜欢的系列玩具,在接下来的n周 ...
- MyBatis学习总结(17)——Mybatis分页插件PageHelper
如果你也在用Mybatis,建议尝试该分页插件,这一定是最方便使用的分页插件. 分页插件支持任何复杂的单表.多表分页,部分特殊情况请看重要提示. 想要使用分页插件?请看如何使用分页插件. 物理分页 该 ...
- Java基础学习总结(23)——GUI编程
一.AWT介绍 所有的可以显示出来的图形元素都称为Component,Component代表了所有的可见的图形元素,Component里面有一种比较特殊的图形元素叫Container,Containe ...
- 洛谷—— P1036 选数 || Vijos——选数
https://vijos.org/p/1128|| https://www.luogu.org/problem/show?pid=1036#sub 描述 已知 n 个整数 x1,x2,…,xn,以及 ...
- 个人学习源码的 HBase误区的总结 与 架构图
HDFS 的备份功能不是给 基于 HBase 等 基于HDFS 的项目做备份的. 如果 HBase 需要备份,那么久需要设置 备份(快照 )功能. HMaster . kafka 等无主结构并 ...
- 给一个执行在windows 7和NAT下的VMWARE虚拟机分配固定IP
虚拟机上装了个oracleserver,每次vmware重新启动或者resume时总要分配新的IP地址,这样就得改动windows下的client配置,所以须要想办法把IP地址固定住. DHCP服务在 ...
- 怎样用第三方开源免费软件portecle从https站点上导出SSL的CA证书?
在我这篇文章中.我提到了怎样用OpenSSL从https站点上导出SSL的CA证书? 这样的方式不太直观,且须要用户自己手工拷贝.然后另存为文件,那么有没有更好更方便的工具呢? 幸运的是,有热心于开 ...
- 深入理解maven及应用(一):生命周期和插件
在项目里用了快一年的maven了,近期突然发现maven项目在eclipse中build时很慢,由于经经常使用clean install命令来build项目,也没有管那么多,但近期实在受不了乌龟一样的 ...
- 如何在IDEA中创建web项目并且部署到Tomcat中
步骤1:File->New Project, 步骤2:选择Project SDK为1.7 -> Next -> Finish(JDK)我自己的是1.7(这里的project,跟ecl ...
- apiCloud手动检测更新
有时候需要给用户一个自主的权利,自主检测app是否是最新版本. 如何实现? 1.点击调用接口,检测是否有更新. 默认APICloud会自动检测版本更新,用户也可以在config.xml里配置autoU ...