当前位置:  编程技术>移动开发
本页文章导读:
    ▪加入ScrollView后OnGestureListener无效的解决方法        加入ScrollView后OnGestureListener无效的解决办法 android中,ViewFlipper+OnGestureListener可以实现左右滑动效果。但是在ViewFlipper加上了ScrollView就悲剧了,左右滑动事件无效了……这里其实只需要多实.........
    ▪ ViewPager 出现重复添加View有关问题        ViewPager 出现重复添加View问题 在使用中ViewPager和GridView整合做一个自定义UI时,在PagerAdapter重载方法instantiateItem()中出现异常   报错code为: @Override public Object instantiateItem(View arg0, int arg1) { .........
    ▪ ad hoc证件       ad hoc证书 iOS证书分2种,1种是开发证书,用来给你(开发人员)做真机测试的;1种是发布证书,发布证书又分发布到app store的(这里不提及)和发布测试的ad hoc证书。  那ad hoc证书和开发.........

[1]加入ScrollView后OnGestureListener无效的解决方法
    来源: 互联网  发布时间: 2014-02-18
加入ScrollView后OnGestureListener无效的解决办法
android中,ViewFlipper+OnGestureListener可以实现左右滑动效果。
但是在ViewFlipper加上了ScrollView就悲剧了,左右滑动事件无效了……

这里其实只需要多实现一个方法就是了,主要是把事件交给系统自己处理

在OnGestureListener对象中,实现以下方法

@Override
public boolean dispatchTouchEvent(MotionEvent ev){
    super.dispatchTouchEvent(ev);   
    //productGestureDetector 是 GestureDetector对象
    return productGestureDetector.onTouchEvent(ev); 
}



另外,由于有了上下滑动和左右滑动的原因,在上下滑动的时候可能会不小心就触发了左右滑动,所以需要在加点东西

private static final int FLING_MIN_DISTANCE = 100;
private static final int FLING_MIN_VELOCITY = 50;

//....

public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
			float velocityY) {

		if (e1.getX() - e2.getX() > FLING_MIN_DISTANCE
				&& Math.abs(velocityX) > FLING_MIN_VELOCITY) {// move to left
                    //TODO 左滑动

		} else if (e2.getX() - e1.getX() > FLING_MIN_DISTANCE
				&& Math.abs(velocityX) > FLING_MIN_VELOCITY) {
		    //TODO 右滑动
		} else {
			return false;
		}
		return true;
	}


    
[2] ViewPager 出现重复添加View有关问题
    来源: 互联网  发布时间: 2014-02-18
ViewPager 出现重复添加View问题

在使用中ViewPager和GridView整合做一个自定义UI时,在PagerAdapter重载方法instantiateItem()中出现异常

 

报错code为:

@Override
		public Object instantiateItem(View arg0, int arg1) {

			((ViewPager) arg0).addView(mListViews.get(arg1), 0); //此句报错。

			return mListViews.get(arg1);

		}

 

具体问题为:

 

java.lang.IllegalStateException The specified child already has a parent. You must call removeView() on the child's parent first.

 

 

查阅相关信息后发现错误原因为指定要添加的view已经被设置了parent,如果要添加就必须先解除原parent的联系.观察Exception错误栈发现导致这一步是因为ViewPager执行setCurrentItem(index)方法时会间接调用到instantiateItem()方法,具体原因未知。

 

修改代码,先判断需要添加的view是否有parent再做add操作,bug解除:

@Override
		public Object instantiateItem(View arg0, int arg1) {
			try {
				if(mListViews.get(arg1).getParent()==null){
					((ViewPager) arg0).addView(mListViews.get(arg1), 0);
				}
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			return mListViews.get(arg1);

		}

 

不过这只是暂时的解决方法,还需要再熟悉viewpager的具体执行机制才能避免这类错误再发生。


    
[3] ad hoc证件
    来源: 互联网  发布时间: 2014-02-18
ad hoc证书
iOS证书分2种,1种是开发证书,用来给你(开发人员)做真机测试的;1种是发布证书,发布证书又分发布到app store的(这里不提及)和发布测试的ad hoc证书。
  那ad hoc证书和开发证书区别在哪里?如果你的tester(团队测试人员、客户)都能将测试设备拿到你面前,直接插到你的mac开发机上,你可以直接将程序“灌”进去,那有开发证书就够了,不需要ad hoc证书。
  如果tester的iOS设备不能直接让你灌程序,那怎么办?你必须打包(Archive)你的程序,然后发给你的tester,让他通过itunes进行安装,那就需要ad hoc证书了。

并且你需要一张名为iTunesArtwork的图片,大小为512x512,因为不是发布到app store,所以icon不能用,测试人员通过itunes安装的时候,就是会展现iTunesArtwork这个图标。并且iTunesArtwork名称不能更改。

    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3