如何让view随着键盘移动

常见的一个功能,让控件随着Keyboard上下移动而移动,实现方法很多,下面是一个比较方便的方法:

#pragma mark - 键盘改动的时候其他view随着变化
-(void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardShow:) name:UIKeyboardWillShowNotification object:nil];
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardHide:) name:UIKeyboardWillHideNotification object:nil];

}

-(void)keyboardShow:(NSNotification *)note
{
    NSLog(@"show");
    CGRect keyBoardRect=[note.userInfo[UIKeyboardFrameEndUserInfoKey] CGRectValue];
    CGFloat deltaY=keyBoardRect.size.height;
    [UIView animateWithDuration:[note.userInfo[UIKeyboardAnimationDurationUserInfoKey] floatValue] animations:^{
  self.yourview=CGAffineTransformMakeTranslation(0, -deltaY);
    }];
}
-(void)keyboardHide:(NSNotification *)note
{
    NSLog(@"hide");
    [UIView animateWithDuration:[note.userInfo[UIKeyboardAnimationDurationUserInfoKey] floatValue] animations:^{
       self.yourview = CGAffineTransformIdentity;
    }];
}//点击返回键
时间: 2024-11-18 16:20:33

如何让view随着键盘移动的相关文章

Android自定义View软键盘实现搜索_Android

1. xml文件中加入自定义 搜索view <com.etoury.etoury.ui.view.IconCenterEditText android:id="@+id/search_et" style="@style/StyleEditText" android:hint="搜索景点信息" /> 2. 自定义的   view java文件 IconCenterEditText.java package com.etoury.etou

设计iOS中随系统键盘弹收和内容文字长度自适应高度的文本框

设计iOS中随系统键盘弹收和内容文字长度自适应高度的文本框     文本输入框是多数与社交相关的app中不可或缺的一个控件,这些文本输入框应该具备如下的功能: 1.在键盘为弹起时,输入框悬浮在界面底部. 2.当键盘弹起时,输入框位置上移至键盘上方,并且动画应与键盘同步. 3.当输入的文字超出一行时,输入框应想用的进行高度扩展. 4.当输入框的高度达到某一极限值时,输入框高度不应继续扩展,文字区域应该支持滑动.     使用autolayout布局技术加上对键盘的相关监听,可以十分方便的实现上述效

IOS view添加点击的手势

问题描述 IOS view添加点击的手势 IOS view添加点击的手势,view中有个button,怎么设置点击button不触发view的手势? 解决方案 ios--手势--点击某个View隐藏键盘IOS开发--根据手势获取添加这个手势的View 解决方案二: 你把button作为view的subview,绑定button的点击事件,这样点击button不会触发view的手势

UITextView UITextField

---------------------------------------------------------------------------------UITextView--------------------------------------------------------------------------------------- 1:禁止 UITextView 拖动 textView.scrollEnabled = NO; 注:如果动态修改textView的Frame时

Android输入法与表情面板切换时的界面抖动问题解决方法_Android

昨天琢磨了下Android的输入法弹出模式,突然发现利用动态切换输入法的弹出模式可以解决输入法抖动的问题.具体是怎样的抖动呢?我们先看微博的反面教材. [具体表现为:表情面板与输入法面板高度不一致,从而导致弹出输入法(layout被挤压)时,同时又需要隐藏表情面板(layout被拉升),最终让界面产生了高度差抖动,所以在切换时明显会有不大好的抖动体验)] 使用了解决抖动的解决方案后,效果如下: [这样的方案明显比微博的切换更平滑] 老样子,先说思路.主要我们要用到两个输入法弹出模式,分别是:ad

Android View 完美实现EditText 在软键盘上边的示例

此方法基于PopupWindow,适合需要回复内容时响应点击事件,打开软键盘,编辑框在软键盘上部. 优点,编辑框使用CleanEdittext,监听输入状态来更改回复按钮颜色,添加title等. 先展示效果 点击评论打开软键盘,编辑框在软键盘上部,点击其他区域消失收起软键盘: 1.BaseSelectPopupWindow 的代码. public class BaseSelectPopupWindow extends PopupWindow { private View popView; pri

关闭键盘

1.点击固定的按钮关闭键盘 -(BOOL)textFieldShouldReturn:(UITextField *)textField { [textField resignFirstResponder]; return YES; } -(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { if([text isEqualToS

UITableView中cell里的UITextField不被弹出键盘挡住

UITableView中cell里的UITextField不被弹出键盘挡住    本人视频教程系类   iOS中CALayer的使用   效果如下: 源码: EditCell.h 与 EditCell.m // // EditCell.h // Cell // // Created by YouXianMing on 14/12/18. // Copyright (c) 2014年 YouXianMing. All rights reserved. // #import <UIKit/UIKit

iOS8新特性扩展(Extension)应用之四——自定义键盘控件

iOS8新特性扩展(Extension)应用之四--自定义键盘控件         iOS8系统的开放第三方键盘,使得用户在输入法的选择上更加自主灵活,也更加贴近不同语言的输入风格.这篇博客,将介绍如何开发一个第三方的键盘控件. 一.了解UIInputViewController类         UIInputViewController是系统扩展支持键盘扩展的一个类,通过这个类,我们可以自定义一款我们自己的键盘提供给系统使用.         首先,我们先来看一下这个类中的一些属性和方法: