当前位置:  编程技术>移动开发
本页文章导读:
    ▪为UIView添加下上左右滑动操作        为UIView添加上下左右滑动操作 方法一:在viewDidLoad时为UIView添加操作 UISwipeGestureRecognizer *recognizer; recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)]; [recognizer set.........
    ▪ 除开或替换listview 默认的点击选中时的颜色        去除或替换listview 默认的点击选中时的颜色 1.去除默认的点击选中时的颜色 (1)设置列表layout的backgroudcolor属性就OK了。 (2)android:focusable="false" android:focusableInTouchMode="false"    android:cacheColorHint=.........
    ▪ listView 怎么保持选中项高亮       listView 如何保持选中项高亮 1.首先定义一个boolean[] listItemState用来保存列表项选中的状态! 2.在onItemClick中 public void onItemClick(AdapterView<?> parent, View view, int position,     long id) {    System.ou.........

[1]为UIView添加下上左右滑动操作
    来源: 互联网  发布时间: 2014-02-18
为UIView添加上下左右滑动操作

方法一:
在viewDidLoad时为UIView添加操作
	UISwipeGestureRecognizer *recognizer;
	recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)];
	[recognizer setDirection:(UISwipeGestureRecognizerDirectionRight)];
	[[self view] addGestureRecognizer:recognizer];
	[recognizer release];
	
	recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)];
	[recognizer setDirection:(UISwipeGestureRecognizerDirectionLeft)];
	[[self view] addGestureRecognizer:recognizer];
	[recognizer release];
	
	recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)];
	[recognizer setDirection:(UISwipeGestureRecognizerDirectionUp)];
	[[self view] addGestureRecognizer:recognizer];
	[recognizer release];
	
	recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)];
	[recognizer setDirection:(UISwipeGestureRecognizerDirectionDown)];
	[[self view] addGestureRecognizer:recognizer];
	[recognizer release];

响应操作绑定的事件
- (void)handleSwipeFrom:(UISwipeGestureRecognizer *)recognizer{
        //UISwipeGestureRecognizerDirectionLeft   UISwipeGestureRecognizerDirectionRight  UISwipeGestureRecognizerDirectionUp  UISwipeGestureRecognizerDirectionDown
	if (recognizer.direction==UISwipeGestureRecognizerDirectionLeft ) {
		NSLog(@"Left");	
	}
	
}

方法二:
#define HORIZ_SWIPE_DRAG_MIN 12
#define VERT_SWIPE_DRAG_MAX 4
CGPoint startTouchPosition;
NSString *dirString ;

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
	UITouch *touch = touches.anyObject;
	startTouchPosition = [touch locationInView:self.view];
}

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event    
{    
    UITouch *touch = touches.anyObject;    
    CGPoint currentTouchPosition = [touch locationInView:self.view];
    if (fabsf(startTouchPosition.x - currentTouchPosition.x) >=    
        HORIZ_SWIPE_DRAG_MIN &&    
        fabsf(startTouchPosition.y - currentTouchPosition.y) <=    
        VERT_SWIPE_DRAG_MAX)    
    {    
        // Horizontal Swipe   
        if (startTouchPosition.x < currentTouchPosition.x) {   
            NSLog(@"from left");   
			dirString = @"left";
        }   
        else{    
            NSLog(@"from right");   
			dirString = @"right";}
		}    
   else if (fabsf(startTouchPosition.y - currentTouchPosition.y) >=    
             HORIZ_SWIPE_DRAG_MIN &&    
             fabsf(startTouchPosition.x - currentTouchPosition.x) <=    
             VERT_SWIPE_DRAG_MAX)   
	{    
        // Vertical Swipe   
        if (startTouchPosition.y < currentTouchPosition.y) {   
			NSLog(@"from bottom");
			dirString = @"bottom";}
        else    {
			NSLog(@"from top");
			dirString = @"top";}
    } else    
    {   
		//dirString = @"";
	}   
} 

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{
	if (dirString == @"right") {
		NSLog(@"event right");
	}else if (dirString == @"left") {
		NSLog(@"event left");
	}
}

    
[2] 除开或替换listview 默认的点击选中时的颜色
    来源: 互联网  发布时间: 2014-02-18
去除或替换listview 默认的点击选中时的颜色

1.去除默认的点击选中时的颜色

(1)设置列表layout的backgroudcolor属性就OK了。

(2)android:focusable="false" android:focusableInTouchMode="false"

   android:cacheColorHint="#00000000" android:listSelector="#00000000"


2.替换listview 默认的点击选中时的颜色

设置listivew的listSelector属性就可以了。

1 楼 jackie03 2011-10-11  
简洁明了 犀利

    
[3] listView 怎么保持选中项高亮
    来源: 互联网  发布时间: 2014-02-18
listView 如何保持选中项高亮

1.首先定义一个boolean[] listItemState用来保存列表项选中的状态!

2.在onItemClick中

public void onItemClick(AdapterView<?> parent, View view, int position,
    long id) {
   System.out.println("position:" + position + ",count:"
     + listAdapter.getCount());
   if (listItemState[position]) {
    listItemState[position] = false;
    view.setBackgroundResource(0);//不设置颜色
   } else {
    listItemState[position] = true;
    view.setBackgroundResource(R.drawable.betresult_list_focus);
   }

}

3.在重写的Adapter 的getView方法中,写入类似这样的语句。

if (listItemState[position]) {
     view.setSelected(true);
     view.setPressed(true);
     // view.setBackgroundColor(Color.BLUE);
     view.setBackgroundResource(R.drawable.betresult_list_focus);
    } else {
     view.setSelected(false);
     view.setPressed(false);
     // view.setBackgroundColor(Color.BLUE);
    }

如此,选中的列表项可以高亮显示!


    
最新技术文章:
编程语言 iis7站长之家
▪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