我有一个$paragraph = '
<p class="instruction">
<sup id="num1" class="s">80</sup>
Hello there and welcome to Stackoverflow! You are welcome indeed.
</p>
';
// Split up $paragraph into an array of tags and words
$paragraphArray = preg_split('/(<.*?>)|\s/', $paragraph, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);
$wordIndicies = array(0, 4);
$replaceWith = 'REPLACED';
foreach ($wordIndicies as $wordIndex) {
for ($i = 0; $i <= $wordIndex; $i++) {
// if this element starts with '<', element is a tag.
if ($paragraphArray[$i]{0} == '<') {
// push wordIndex forward to compensate for found tag element
$wordIndex++;
}
// when we reach the word we want, replace it!
elseif ($i == $wordIndex) {
$paragraphArray[$i] = $replaceWith;
}
}
}
// Put the string back together
$newParagraph = implode(' ', $paragraphArray);
// Test output!
echo(htmlspecialchars($newParagraph));
,每个单元格中包含UITableView
当我单击单元格中的UITextField
时,键盘将显示并覆盖我的单元格。因此,我使用。
UITextField
如果我在每个单元格上使用单击,我的应用程序就可以正常工作 但是,我在每个单元格上使用双击(这意味着我很快点击它2次),我的单元格将停止滚动到顶部。
答案 0 :(得分:3)
在这一行
@Component()
可能是2个错误。
首先,您必须确保捕获的inputView是您想要的视图。 其次,您应该使用适当的方法将获取的点转换为正确的视图。
进一步调查需要更多背景。
答案 1 :(得分:2)
TPKeyboardAvoiding似乎是一个解决方案。
答案 2 :(得分:2)
你确定scrollPoint是否正确?
我刚刚创建了一个带有固定偏移的示例项目,一切都运行得很好。单击和双击特定UITextField
的{{1}}后,表格视图会向上滚动。
UITableViewCell
答案 3 :(得分:1)
而不是做代码手动调整你的tableview框架, 让我给你一个建议,你可以使用IQKeyboardManager,它的pod在cocoapods中可用 当点击单元格的文本字段时,它将自动滚动。
答案 4 :(得分:1)
尝试使用第三方库IQKeyboardManager它将帮助您解决此问题。
https://github.com/hackiftekhar/IQKeyboardManager
替换AppDelegate.m文件中的以下代码,然后您不需要使用scrollview方法来处理键盘: -
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[[IQKeyboardManager sharedManager] setEnable:YES];
[self.window makeKeyAndVisible];
return YES;
}
答案 5 :(得分:1)
您是否创建了单独的UITableViewCell类?
我相信当您滚动UITableView时,您的UI会冻结,或者当您经常两次选项卡时,UITableView会停止响应或花时间做出响应。
答案 6 :(得分:0)
这是一个工作示例。您可以使用滚动视图的 contentInset 和 scrollIndicatorInsets 属性来避免出现键盘。您应该注册键盘通知。使用通知中的信息来确定键盘的大小 - 你永远不知道它会是什么。
使用内容插入是处理滚动视图的正确方法。如果您随后需要将编辑行滚动到视图中,请使用 UITableView.scrollToRowAtIndexPath(_:,atScrollPosition:,animated:)
请注意,当用户隐藏/显示完成栏时,它会做正确的事。
Router.route('/foo/:bar',{ // Route takes a single parameter
name: 'foo',
waitOn: function(){
return Meteor.subscribe('fooPublication', this.params.bar);
}
});