`
helloandroid
  • 浏览: 276189 次
  • 性别: Icon_minigender_1
  • 来自: 成都
博客专栏
107f8db3-b009-3b79-938a-dafddb49ea79
Android腾讯微博客户...
浏览量:95836
社区版块
存档分类
最新评论

android小应用帮美女更衣系列一(附源码)

阅读更多
哈哈,在苹果手机上玩过类似游戏,在eoe上发现一个兄弟也模仿做了一个,今天趁周末自己也做了一个,借用了那位兄弟的一些美女图片,应该不涉及版权吧。程序有点yellow,希望iteye管理员高台贵手 ,本意是给大家带来点乐趣。

为保护你的隐私,设置了密码保护。

下面贴部分关键代码:
@Override
	public void onClick(View v) {
		int id = v.getId();
		switch (id) {
		case R.id.yesBtn: {
			SharedPreferences preferences = getSharedPreferences("password",Activity.MODE_PRIVATE);  
	        String pwd = preferences.getString("pwd", "");
	        if(pwd!=null&&!"".equals(pwd)){
	        	if(password.getText().toString()!=""&&password.getText()!=null&&password.getText().toString().equals(pwd)){
	        		//Toast.makeText(PasswordActivity.this, "密码一致,请重新输入密码", Toast.LENGTH_SHORT).show();
	        		Intent intent = new Intent();
	        		intent.setClass(PasswordActivity.this, SettingsActivity.class);
	        		startActivity(intent);
	        		PasswordActivity.this.finish();
	        	}else{
	        		Toast.makeText(PasswordActivity.this, "密码不一致,请重新输入密码", Toast.LENGTH_SHORT).show();
	        	}
	        }else{
	        	SharedPreferences ferences = getSharedPreferences("password",Activity.MODE_PRIVATE);
				SharedPreferences.Editor editor = ferences.edit();
				editor.putString("pwd", password.getText().toString());
				editor.commit();
				//Toast.makeText(PasswordActivity.this, "已经设置密码", Toast.LENGTH_SHORT).show();
				Intent intent = new Intent();
        		intent.setClass(PasswordActivity.this, SettingsActivity.class);
        		startActivity(intent);
        		PasswordActivity.this.finish();
	        }
	        
	        
		}
			break;
		case R.id.cancelBtn: {
			PasswordActivity.this.finish();
		}
			break;
		}
	}


下面是下面这张图片所显示的界面的实现,底部是一个gallery,显示大图用的是ImageSwither这个组件,一点要注意的地方是要实现ViewFactory接口并实现方法makeView();


package com.picture;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.Gallery.LayoutParams;
import android.widget.ImageSwitcher;
import android.widget.ImageView;
import android.widget.ImageView.ScaleType;
import android.widget.Toast;
import android.widget.ViewSwitcher.ViewFactory;

public class MainActivity extends Activity implements ViewFactory {
	private ImageSwitcher is;
	private Gallery gallery;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		setupViews();
		setupListener();
	}
	
	private void setupViews(){
		is = (ImageSwitcher)findViewById(R.id.image_switcher);
		is.setFactory(this);
		gallery = (Gallery)findViewById(R.id.gallery);
		gallery.setAdapter(new ImageAdapter(MainActivity.this));
	}
	private void setupListener(){
		gallery.setOnItemSelectedListener(new OnItemSelectedListener() {
			@Override
			public void onItemSelected(AdapterView<?> parent, View view,
					int position, long id) {
				int drawableId = 0;
    			try {
    				drawableId = R.drawable.class.getDeclaredField(
    						"pre" + position).getInt(this);
    			} catch (IllegalArgumentException e) {
    				e.printStackTrace();
    			} catch (SecurityException e) {
    				e.printStackTrace();
    			} catch (IllegalAccessException e) {
    				e.printStackTrace();
    			} catch (NoSuchFieldException e) {
    				e.printStackTrace();
    			}
            	is.setImageResource(drawableId);
				
			}
			@Override
			public void onNothingSelected(AdapterView<?> parent) {
			}  
        });
		
		is.setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v){
				Intent intent = new Intent();
				intent.putExtra("imagePosition", gallery.getSelectedItemPosition());
				intent.setClass(MainActivity.this, RemoveClothActivity.class);
				startActivity(intent);
			}
		});
	}
	
	private class ImageAdapter extends BaseAdapter {
		private Context mContext;
		public ImageAdapter(Context c){
			mContext = c;
		}
		@Override
		public int getCount() {
			return 11;//11张图片
		}
		@Override
		public Object getItem(int position) {
			return position;
		}
		@Override
		public long getItemId(int position) {
			return position;
		}

		@Override
		public View getView(int position, View convertView, ViewGroup parent) {
			ImageView imageView = new ImageView(mContext);
			int drawableId = 0;
			try {
				drawableId = R.drawable.class.getDeclaredField(
						"pre" + position).getInt(this);
			} catch (IllegalArgumentException e) {
				e.printStackTrace();
			} catch (SecurityException e) {
				e.printStackTrace();
			} catch (IllegalAccessException e) {
				e.printStackTrace();
			} catch (NoSuchFieldException e) {
				e.printStackTrace();
			}
			imageView.setLayoutParams(new Gallery.LayoutParams(120,120));
			imageView.setScaleType(ScaleType.FIT_XY);
			imageView.setImageResource(drawableId);
			return imageView;
		}
	}

	@Override
	public View makeView() {
		ImageView i = new ImageView(this);
		i.setBackgroundColor(0xFF000000);
		i.setScaleType(ImageView.ScaleType.FIT_CENTER);
		i.setLayoutParams(new ImageSwitcher.LayoutParams(
				LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
		return i;
	};
}



  • 大小: 502 KB
分享到:
评论
6 楼 shen314 2013-09-14  
cao,太棒啦,楼主,我都要爱上你了,,,,,,,
5 楼 虎踞龙盘忆江南 2012-04-20  
 
4 楼 helloandroid 2011-11-03  
veve 写道
请问一下:   

drawableId = R.drawable.class.getDeclaredField("pre" + position).getInt(this);
何解啊?
字符串"pre" 是个什么参数?

这句是通过反射取到动态获取到对应位置上的图片资源的id,pre是图片资源的前缀,代表更衣前的图片。
3 楼 veve 2011-11-03  
请问一下:   

drawableId = R.drawable.class.getDeclaredField("pre" + position).getInt(this);
何解啊?
字符串"pre" 是个什么参数?
2 楼 hao3100590 2011-10-24  
呵呵,好牛逼额
1 楼 macleo 2011-10-22  
经典...学习一下....我狂顶...我狂顶...我狂顶求子....

相关推荐

    android小应用帮美女更衣系列二(附源码)

    《Android小应用帮美女更衣系列二:源码解析与应用探索》 在移动应用开发领域,Android平台因其开源和广泛的设备支持,成为了开发者的重要舞台。本篇文章将深入探讨一个特殊的Android应用——“美女更衣”系列的第...

    (android源码)帮美女更衣

    【标题】"(android源码)帮美女更衣"揭示了这是一个基于Android平台的游戏应用,其核心功能是允许用户操作游戏中的角色更换衣物。在Android开发中,源码是理解应用工作原理、学习编程技巧以及进行二次开发的重要...

    android 帮美女更衣源码

    在Android平台上,开发一款名为“帮美女更衣”的小游戏,涉及到许多关键的编程和技术知识点。首先,我们需要了解Android应用的基本架构,它通常基于组件模型,包括Activity、Service、BroadcastReceiver和...

    高仿帮美女更衣系列源码(1)

    【标题】"高仿帮美女更衣系列源码(1)"主要涉及到的是在Android平台上开发的一款模拟游戏的源代码,旨在提供一个类似"帮美女更衣"的应用体验。这样的应用通常包含各种服装、配饰的选择,用户可以自由搭配,为虚拟...

    替美女更衣源码

    首先,“替美女更衣源码”指的是一款小游戏应用的源代码。此类游戏一般允许用户为虚拟角色更换衣物,这一过程不仅仅是为了娱乐,也为了提升游戏体验。源代码是整个游戏应用的根本,它包含了程序员精心设计的算法和...

    Android游戏removeClothForBeautyGirl_美女更衣源码

    Android removeClothForBeautyGirl_美女更衣安卓游戏Java源码,点击ImageSwitcher显示的图片即可切换到为美女换衣全屏界面,手指在界面上滑动,滑动处的衣服就被褪掉了。其实是两张图片,一张底图,一张上面的图,...

    美女图片微信小程序源码

    本教程将围绕"美女图片微信小程序源码"这一主题,详细介绍如何利用提供的源码搭建并运营一个吸引流量的小程序,从而实现广告收益。 首先,我们需要理解微信小程序的基本概念。微信小程序是一种轻量级的应用形态,它...

    android 小游戏 美女密码源码

    总结来说,"android 小游戏 美女密码源码" 是一个面向Android开发者的实践案例,它提供了从零开始了解和学习游戏开发的宝贵机会。无论是对Android应用开发感兴趣的新手,还是寻求新项目灵感的资深开发者,都能从中...

    Android游戏源码安卓美女拼图游戏

    《Android游戏源码安卓美女拼图游戏》是一个适合Android初学者和高级开发者研究的项目,它揭示了Android游戏开发的基本原理和实践技巧。通过分析这个游戏的源码,我们可以深入理解Android应用开发的核心技术和游戏...

    Android应用源码美女图集瀑布流看图项目源码

    本项目是一个基于安卓的美女图片项目源码,被作者分成了气质、校花、时尚、素颜、唯美、清纯、可爱、长发、小清新、嫩萝莉等十多个分类,所有图片都是异步通过网络下载,以瀑布流的方式展示。大部分代码有详细的中文...

    Android小游戏安卓游戏源码45款合集.zip

    Android小游戏安卓游戏源码45款合集: 21点游戏源码.rar Angle v1.0.ZIP Barrage_OpenGLES.rar Billiard_2D.zip catcake-0.9.5-android.tar.gz Chess.rar Crackedcarrot.rar CrazyFootBall.zip EggGame.rar Elose-wr....

    Android美女拼图源码

    Android美女拼图源码是一个基于Android平台的休闲娱乐应用,它允许用户将预设或自定义的图片分割成若干小块,然后进行拼接,形成完整的图像。这个项目对于Android开发者来说,是学习游戏开发、图像处理以及用户体验...

    android美女连连看游戏源码

    今天我们将深入探讨一款基于Android平台开发的“美女连连看”游戏源码,了解其背后的编程逻辑和技术实现。 连连看游戏作为休闲娱乐的经典之作,深受玩家喜爱。它的核心玩法是通过消除两个相同图案的方块,直至所有...

    【微信小程序-毕设期末大作业】美女福利图片微信小程序源码.zip

    【微信小程序-毕设期末大作业】微信小程序源码 【微信小程序-毕设期末大作业】微信小程序源码 【微信小程序-毕设期末大作业】微信小程序源码 【微信小程序-毕设期末大作业】微信小程序源码 【微信小程序-毕设期末大...

    Android应用源码妄撮chocolate撕美女衣服游戏

    本源码是一个妄撮chocolate的安卓版小游戏的项目源码,项目本身比较比较小实现也比较简单,只有四个java文件,源码没有注释,这类游戏用一句话概况就是:挑战裸露极限满足偷窥欲(听起来好吊),就是这样,需要的...

    Android小游戏(美女)

    总结,"Android小游戏(美女)"是一个涉及Android游戏开发、源码分析和优化实践的项目。开发者可以通过这个项目学习到Android游戏开发的基本流程,理解游戏循环的工作原理,以及如何实现一个无广告的游戏版本。同时...

    经典Android开发源码之游戏系

    教程名称: 经典Android开发源码之游戏系【】【经典Android游戏源码10】Android钻石迷情源码【】【经典Android游戏源码11】2048小游戏源码【】【经典Android游戏源码12】Android简单炮台塔防小游戏源码【】【经典...

    微信小程序开发-美女福利图片案例源码.zip

    微信小程序是一种轻量级的应用开发平台,主要针对移动端,由腾讯公司推出,旨在提供便捷的、无需下载安装即可使用的应用体验。在这个“微信小程序开发-美女福利图片案例源码.zip”压缩包中,包含了用于教学或参考的...

    android美女的秘密源码

    【Android美女的秘密源码】是一个与Android应用开发相关的项目,其标题暗示了这可能是一款针对女性用户设计的应用程序,可能是关于美容、时尚、娱乐或健康等领域的应用。这个压缩包包含了一个APK文件(美女秘密.apk...

Global site tag (gtag.js) - Google Analytics