登录
首页 » Android » 一个可以任意摆放、拖动的图片相册

一个可以任意摆放、拖动的图片相册

于 2022-07-26 发布 文件大小:1,016.32 kB
0 159
下载积分: 2 下载次数: 1

代码说明:

应用背景对图片的位置以及摆放的自由度有要求的控件app可以借鉴    关键技术自定义底层容器,获得拖动的位置x,y坐标,在确定位置时候实例化控件添加到容器,并记住位置

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 校园小商品交易市场
    基于安卓的校园小商品交易市场,具有游客登录,用户登录,管理员登录。游客只可查看商品,用户可购买商品和出售商品。管理员可以对商品交易和订单进行管理,以及管理用户。
    2022-02-26 13:46:15下载
    积分:1
  • Android compass
    一个eclipse小程序,基于安卓平台的指南针。
    2022-08-10 00:31:19下载
    积分:1
  • 基于android通过蓝牙对单片机采集的温度信息进行绘图并记录
    记录温度变化曲线的android程序,单片机采集到温度信息通过蓝牙传输到手机,用到SQLite储存数据,mpchart描绘曲线
    2022-03-25 10:47:57下载
    积分:1
  • android短信功能
    android短信功能 核心代码:package cn.edu.siso;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.List;import javax.xml.parsers.SAXParserFactory;import org.xml.sax.InputSource;import org.xml.sax.XMLReader;import android.app.ListActivity;import android.content.Intent;import android.os.Bundle;import android.view.KeyEvent;import android.view.View;import android.view.Window;import android.widget.Button;import android.widget.ListView;import android.widget.SimpleAdapter;import cn.edu.ContentProvide.Diary.DiaryColumns;import cn.edu.Info.MyInfo;import cn.edu.MyContentHandler.MyContentHandler;import cn.edu.siso.WareHouselistview.SMSBsharpturn;import cn.edu.siso.WareHouselistview.SMSFriendTab;import cn.edu.siso.WareHouselistview.SMSHavefanTab;import cn.edu.siso.WareHouselistview.SMSLoverTab;import cn.edu.siso.WareHouselistview.SMSSchooljoke;import cn.edu.siso.WareHouselistview.SMSapologize;import cn.edu.siso.WareHouselistview.SMShumorjokes;import cn.edu.siso.WareHouselistview.SMSlovewords;import cn.edu.siso.WareHouselistview.SMSmylove;import cn.edu.siso.WareHouselistview.SMSplayful;public class WareHouseActivity extends ListActivity { /** Called when the activity is first created. */ private List mp3Infos=null; private ListView listview; private Button back,updata; public static final String[] PROJECTION = new String[] { DiaryColumns._ID,DiaryColumns.TITLE, DiaryColumns.CREATED }; private Touch touch=new Touch(); @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.warehouse); listview=(ListView) findViewById(android.R.id.list); listview.setScrollingCacheEnabled(false); ShowListView(); back=(Button) findViewById(R.id.back); updata=(Button) findViewById(R.id.updata); back.setOnClickListener(new backlistener()); updata.setOnClickListener(new updatalistener()); back.setOnTouchListener(touch); updata.setOnTouchListener(touch); } private SimpleAdapter budildSimpleAdapter(List mp3Infos){ List list=new ArrayList(); for (Iterator iterator = mp3Infos.iterator(); iterator.hasNext();) { MyInfo mp3Info = (MyInfo) iterator.next(); HashMap map=new HashMap(); map.put("name", mp3Info.getName()); map.put("listimageview", R.drawable.image); list.add(map); } SimpleAdapter listadapter=new SimpleAdapter(this, list, R.layout.textview, new String[]{"name","listimageview"}, new int[]{R.id.houseText,R.id.listimageview}); return listadapter ; } private void ShowListView(){ mp3Infos=pares(R.raw.information); SimpleAdapter listadapter= budildSimpleAdapter(mp3Infos); setListAdapter(listadapter); } public List pares(Object xmlname){ List info=new ArrayList(); try { SAXParserFactory factory=SAXParserFactory.newInstance(); XMLReader reader=factory.newSAXParser().getXMLReader(); MyContentHandler mycontenthandler=new MyContentHandler(info); reader.setContentHandler(mycontenthandler); reader.parse(new InputSource(getResources().openRawResource((Integer) xmlname))); } catch (Exception e) { e.printStackTrace(); } return info; } @Override protected void onListItemClick(ListView l, View v, int position, long id) { // TODO Auto-generated method stub //MyInfo myinfo=mp3Infos.get(position); //System.out.println("myinfo-------" myinfo); Intent intent =new Intent(); switch(position){ case 0: intent.setClass(WareHouseActivity.this, SMSapologize.class); startActivity(intent); break; case 1: intent.setClass(WareHouseActivity.this, SMSmylove.class); startActivity(intent); break; case 2: intent.setClass(WareHouseActivity.this, SMSlovewords.class); startActivity(intent); break; case 3: intent.setClass(WareHouseActivity.this, SMSHavefanTab.class); startActivity(intent); break; case 4: intent.setClass(WareHouseActivity.this, SMSLoverTab.class); startActivity(intent); break; case 5: intent.setClass(WareHouseActivity.this, SMSplayful.class); startActivity(intent); break; case 6: intent.setClass(WareHouseActivity.this, SMSBsharpturn.class); startActivity(intent); break; case 7: intent.setClass(WareHouseActivity.this, SMShumorjokes.class); startActivity(intent); break; case 8: intent.setClass(WareHouseActivity.this, SMSFriendTab.class); startActivity(intent); break; case 9: intent.setClass(WareHouseActivity.this, SMSSchooljoke.class); startActivity(intent); break; case 10: intent.setClass(WareHouseActivity.this, SMSSchooljoke.class); startActivity(intent); break; case 11: intent.setClass(WareHouseActivity.this, SMSSchooljoke.class); startActivity(intent); break; case 12: intent.setClass(WareHouseActivity.this, SMSSchooljoke.class); startActivity(intent); break; case 13: intent.setClass(WareHouseActivity.this, SMSSchooljoke.class); startActivity(intent); break; case 14: intent.setClass(WareHouseActivity.this, SMSSchooljoke.class); startActivity(intent); break; case 15: intent.setClass(WareHouseActivity.this, SMSSchooljoke.class); startActivity(intent); break; case 16: intent.setClass(WareHouseActivity.this, SMSSchooljoke.class); startActivity(intent); break; } super.onListItemClick(l, v, position, id); } @Override public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub if(keyCode==KeyEvent.KEYCODE_BACK&&event.getRepeatCount()==0){ //需要处理 Intent intent =new Intent(); intent.setClass(WareHouseActivity.this, InformationActivityActivity.class); startActivity(intent); finish(); } return false; } class backlistener implements Button.OnClickListener{ @Override public void onClick(View arg0) { // TODO Auto-generated method stub Intent intent = new Intent(); intent.setClass(WareHouseActivity.this,InformationActivityActivity.class); startActivity(intent); finish(); }} class updatalistener implements Button.OnClickListener{ @Override public void onClick(View v) { ShowListView(); }}}
    2014-11-09下载
    积分:1
  • Spring及依赖注入 入门级实例(文档)
    Spring创始人Rod JohnsonSpring简介什么是IoC,依赖注入使用Spring依赖注入示例创建登录示例,编写dao,biz,action为项目添加Spring支持编写Spring配置文件测试注入编写Spring与Struts集成的配置文件在Struts中配置插件在Sping中配置Action面向接口编程注入的使用总结
    2014-12-13下载
    积分:1
  • 蓝牙聊天
    调用系统蓝牙通信,实现了蓝牙聊天功能
    2022-03-17 23:06:31下载
    积分:1
  • 第一个安卓例子代码
    《Android开发权威指南》内容上涵盖了用最新的Android版本开发的大部分场景。全书分4个部分,分别从Android基础介绍、环境搭建、SDK介绍,到应用剖析、组件介绍、综合实例演示,以及符合潮流的、最新的移动开发技术,如HTML5、OpenGL ES、NDK编程、Android测试驱动开发等几个方面讲述。从技术实现上,讲解了6大完整综合案例及源代码分析,分别是新浪微博客户端、蓝牙聊天、全键盘输入法、月球登陆(游戏)、贪吃蛇(游戏)、笑脸连连看(游戏)。
    2022-02-01 10:36:18下载
    积分:1
  • Android 应用2.1
    Android 应用2.1Android 应用2.1Android 应用2.1
    2022-07-19 17:10:53下载
    积分:1
  • 基于RRT及其改进型的路径规划算法
    本设计学习并分析了基本RRT路径规划的原理,并通过参考资料及自己分析,提出了一种改进的RRT路径规划算法。为了验证改进型RRT算法的正确性以及合理性。最后在VS2010开发环境下用C 编写了两种RRT算法的程序代码及演示界面。通过一定量的实验得到了大量数据。经过数据分析,验证了改进型RRT是正确的,并且在不破坏基本RRT算法的随机性的前提下,有效的将随机性和目的性结合起来,提高了RRT算法的效率和路径的质量。
    2015-04-03下载
    积分:1
  • android电子点餐系统
    CREATE PROCEDURE `new_proc`(IN tableId1 INTEGER(11), IN tableId2 INTEGER(11))     NOT DETERMINISTIC     SQL SECURITY DEFINER     COMMENT "" BEGIN      declare perNum,oId1,oId2 integer;           select personNum  into perNum from OrderTbl as ot where      ot.tableId =tableId2      and ot.isPay = 0;           select id into oId1 from OrderTbl as ot where      ot.tableId = tableId1      and ot.isPay = 0;           select id into oId2 from OrderTbl as ot where      ot.tableId = tableId2      and ot.isPay = 0;      update Order
    2022-08-09 22:02:27下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载