疯狂Android之图片浏览器

原创 2015年11月18日 12:22:52
package com.sunset.imageviewfirst;


import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.drawable.BitmapDrawable;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.widget.Button;
import android.widget.ImageView;


public class MainActivity extends Activity {


int[] images = new int[] { R.drawable.icon_two, R.drawable.fdsfdsafdsaf,
R.drawable.icon_odfde, R.drawable.icon_ofdfd };


int count = 2;
private int alpha = 255;
Button but_1, but_2, but_3;
ImageView imageView1, imageView2;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
but_3 = (Button) findViewById(R.id.but_3);
but_1 = (Button) findViewById(R.id.but_1);
but_2 = (Button) findViewById(R.id.but_2);
imageView1 = (ImageView) findViewById(R.id.imageView1);
imageView2 = (ImageView) findViewById(R.id.imageView2);
but_3.setOnClickListener(new OnClickListener() {


@Override
public void onClick(View v) {
imageView1.setImageResource(images[++count % images.length]);
}
});


View.OnClickListener listtener = new View.OnClickListener() {


@Override
public void onClick(View v) {
if (v == but_1) {
alpha += 20;
}
if (v == but_2) {
alpha -= 20;
}
if (alpha >= 255) {
alpha += 255;
}
if (alpha <= 0) {
alpha += 0;
}
imageView1.setAlpha(alpha);
}
};
but_1.setOnClickListener(listtener);
but_2.setOnClickListener(listtener);


imageView1.setOnTouchListener(new OnTouchListener() {


@Override
public boolean onTouch(View v, MotionEvent event) {
BitmapDrawable bitmapDrawable = (BitmapDrawable) imageView1
.getDrawable();
Bitmap bitmap = bitmapDrawable.getBitmap();


double scale = 1.0 * bitmap.getHeight() / bitmap.getWidth();
int x = (int) (event.getX() * scale);
int y = (int) (event.getY() * scale);


if (x + 120 > bitmap.getWidth()) {
x = bitmap.getWidth() - 120;
}
if (y + 120 > bitmap.getHeight()) {
y = bitmap.getHeight() - 120;
}
imageView2.setImageBitmap(Bitmap.createBitmap(bitmap, x, y,
120, 120));
return false;
}
});
}

}






xml文件activity_main


<LinearLayout 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"
    android:orientation="vertical">


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >


        <Button
            android:id="@+id/but_1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="+" />


        <Button
            android:id="@+id/but_2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="-" />


        <Button
            android:id="@+id/but_3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="下一張" />
    </LinearLayout>


    <ImageView
          android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="280dp"
        android:scaleType="fitCenter"
        android:src="@drawable/icon_two" />


    <ImageView
          android:id="@+id/imageView2"
        android:layout_width="120dp"
        android:layout_height="120dp"
        android:background="#00f" />


</LinearLayout>

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Android 简单图片浏览器(疯狂Android讲义第三版)

新手学习Android

我的Android进阶之旅------>Android疯狂连连看游戏的实现之加载界面图片和实现游戏Activity(四)

正如在《我的Android进阶之旅------>Android疯狂连连看游戏的实现之状态数据模型(三)》一文中看到的,在AbstractBoard的代码中,当程序需要创建N个Piece对象时,程序会直...

我的Android进阶之旅------>Android疯狂连连看游戏的实现之加载界面图片和实现游戏Activity(四)

正如在《我的Android进阶之旅------>Android疯狂连连看游戏的实现之状态数据模型(三)》一文中看到的,在AbstractBoard的代码中,当程序需要创建N个Piece对象时,程序会直...

Android超炫图片浏览器代码

使用过Android自带的gallery组件的人都知道,gallery实现的效果就是拖动浏览一组图片,相比iphone里也是用于拖动浏览图片的coverflow,显然逊色不少。实际上,可以通过扩展ga...

android图片浏览器

  • 2012-11-30 22:01
  • 487KB
  • 下载

Android图片浏览器

  • 2012-10-26 14:47
  • 1006KB
  • 下载

Android学习之优化美女图片浏览器

接上一篇文章:Android学习之打造美女图片浏览器 上一篇博文其实我给大家留了好多坑,那么这篇文章我就一一把坑都埋了,好吧:)有一种自己挖坑自己埋的感觉,不过埋的过程我们也是可以学到不少的;而且我...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)