小编Bri*_*Lee的帖子

如何将UITextView的光标移动到TOUCHED LOCATION?

我的问题的目标是制作像iOS一样的笔记应用程序.iOS笔记应用程序的重点是它们为用户提供使用超链接或电话号码链接或电子邮件地址作为蓝色文本颜色,我们可以同时编辑文本.

通常,当我们按下UITextView时,它会将光标定位到我们触摸的位置.但如果我使用UITextView的dataDetectorTypes来输入像iOS的笔记应用程序这样的电话号码或http链接,我应该将其设置为不可编辑,否则链接不起作用.这意味着我无法单击UITextView和编辑文本.

但我可以使用下面的代码将其设置为可编辑

UITapGestureRecognizer *recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self 
    action:@selector(editTextRecognizerTabbed:)];
Run Code Online (Sandbox Code Playgroud)

-

- (BOOL) editTextRecognizerTabbed:(UITapGestureRecognizer *) aRecognizer
{
    textview.editable = YES;
    textview.dataDetectorTypes = UIDataDetectorTypeNone;
    [textview becomeFirstResponder];
}
Run Code Online (Sandbox Code Playgroud)

现在我可以编辑文本,一切正常,但问题是它总是从文本结束开始,所以用户应该再次点击他们想要写的地方.我理解其中的原因.

现在我想将光标移动到我在第一点按下的位置,然后使用[aRecognizer locationInView:view]获得坐标;

那么如何将UITextView中的游标移动到位置我从识别器中获取?

谢谢.

iphone uitextview ios

4
推荐指数
1
解决办法
1838
查看次数

每次我恢复我的应用程序时,都会调用 MainActivity 的 OnCreate。(Xamarin 形式)

我正在使用 XF pcl 制作应用程序。(安卓应用兼容)

每次我恢复我的应用程序时,都会调用 MainActivity 的 OnCreate。这意味着我每次恢复应用程序时都会重新启动我的应用程序,对吗?

这是正常行为吗?或者我应该检查我的应用程序?

谢谢。

xamarin.android xamarin xamarin.forms

3
推荐指数
1
解决办法
815
查看次数

在 Xamarin.Forms 上使用 SkiaSharp lib 绘制样条线(平滑路径)?

我正在使用 Xamarin 表单制作应用程序。

我想用 SKPath 绘制一条平滑的路径(样条线),但我无法找到一种简单的方法来实现这一点。

Skiasharp 目前不支持它,除非我自己顺利走路。

谢谢。

c# 2d xamarin xamarin.forms skiasharp

3
推荐指数
1
解决办法
4164
查看次数

嵌套Drawer-StackNavigator,触发"DrawerOpen"不能使用React-Native

我正在使用React Native和react-navigation制作应用程序.

[我的应用程序的层次结构]

*抽屉(APP)

ㄴStackNavigator

ㄴStackNavigator

我想要的是火 navigation.navigate('DrawerOpen');

我可以通过从左边缘拖动来显示我的抽屉,但不是通过按导航标题左侧的"菜单按钮"触发它.我花了这么多次来存档这个.请帮我.

const Nav = StackNavigator({
    mainnav_list:{
        screen: (props) => <TodoList {...props} dbCollectionName={props.screenProps.dbCollectionName}/>,
        navigationOptions:({navigation}) => ({
            headerLeft:(
                <TouchableOpacity onPress={() => {console.log(navigation); navigation.navigate('DrawerOpen');}}>
                    <Text style={{color:'white', marginLeft:15}}>Menu</Text>
                </TouchableOpacity>
            )
        })
    },
    mainnav_detail:{screen: TodoDetail}
}
,
{
    navigationOptions:(props) => ({
        title:props.screenProps.dbCollectionName,
        headerBackTitle:null,
        headerStyle:{backgroundColor:'#000'},
        headerTitleStyle:{color:'#fff'},
        headerTintColor:'#fff',
    })
})

const AppDrawer = DrawerNavigator(
{
    drawer1:{screen:() => <Nav screenProps={{dbCollectionName:'todos'}}/> },
    drawer2:{screen:() => <Nav screenProps={{dbCollectionName:'todos2'}}/> }
})

AppRegistry.registerComponent('TodosFS', () => AppDrawer);
Run Code Online (Sandbox Code Playgroud)

react-native react-navigation

2
推荐指数
1
解决办法
2421
查看次数

在没有Reducer的Reducer中设置redux状态

我正在使用 React Native 制作应用程序。

有时,我想通过仅设置值而不执行Action来设置Redux在Reducer中的特定状态。

这可能吗?

reactjs react-native redux

2
推荐指数
1
解决办法
2333
查看次数

如何在WWDC 2012中使用"核心数据与iCloud"会话227的示例代码?

我有几个星期的时间来解决这个问题..所以请帮我解决这个问题.

我从苹果WWDC 2012下载了iCloud的核心数据示例代码.并试图将它用于我的应用程序,但没有任何效果.

当然,我改变了一些代码..但我不知道我应该做什么,也找不到任何关于它和教程的网站..

我已经花了几个星期,我很累.我知道这是因为我缺乏技巧.

我面临的问题是......

- (void)asyncLoadPersistentStores {
NSError *error = nil;

if ([self loadLocalPersistentStore:&error]) {
    NSLog(@"Added local store");
} else {
    NSLog(@"Unable to add local persistent store: %@", error);
}

//if iCloud is available, add the persistent store
//if iCloud is not available, or the add call fails, fallback to local storage
BOOL useFallbackStore = NO;
if ([self iCloudAvailable]) {
    if ([self loadiCloudStore:&error]) {
        NSLog(@"Added iCloud Store");

        //check to see if we need to seed data from the …
Run Code Online (Sandbox Code Playgroud)

iphone core-data icloud ios6

1
推荐指数
1
解决办法
1717
查看次数

Integer 的 BindableProperty 的 Setter 从未从 xaml (Xamarin.forms) 调用

我正在使用 Xamarin.forms 制作应用程序。

我将 BindableProperty 设置为整数。但它的 setter 从未被调用,甚至没有从 xaml 设置。

<... SelectedIndex="{Binding myValue}">
Run Code Online (Sandbox Code Playgroud)

我是不是做错了什么?

谢谢。

   public class CircleSegmentControl : StackLayout
        {
            public static readonly BindableProperty SegmentInitialIndexProperty = BindableProperty.Create("SelectedIndex", typeof(int), typeof(CircleSegmentControl), 0);
            public int SelectedIndex {
set{ 
Debug.WriteLine("setter"); 
SetValue(SegmentInitialIndexProperty, value); 
SelectIndex(value); 
}
get{
Debug.WriteLine("getter"); 
return (int)GetValue(SegmentInitialIndexProperty);
}
}
    ...
    }
Run Code Online (Sandbox Code Playgroud)

xaml binding xamarin xamarin.forms

1
推荐指数
1
解决办法
1677
查看次数

当app是前景时,为什么会显示推送通知?(iOS10/iPhone 7)

我有奇怪的经历.当app是前景时,为什么会显示推送通知(在原生横幅中)?它仅在iPhone 7(iOS10.1.1)上重现.

我测试了其他iPhone,如iPhone 5和iPhone 6s,具有相同的应用程序,相同的iOS版本.当应用程序正常处于前台时,它不会显示.

推送横幅仅出现在iPhone 7上.

这是正常的吗?

我的应用程序由Xamarin.forms创建.(目前,Xamarin将c#代码转换为目标C,因此它基本上是客观的c)

谢谢.

ios ios10

0
推荐指数
2
解决办法
4550
查看次数

我可以将'Task.Run'更改为'async void'吗?(Xamarin.forms)

我正在使用XF pcl制作应用程序.即使我已经在商店推出了我的应用程序,我仍然是c#world的新手.我特别使用Thread时遇到了麻烦.

在XF/iOS中,我在启动app后花了一段时间(超过一天),我的代码的所有Task.Run()都没有启动新线程.一个人告诉我,如果我有可能开始很多线程,不知何故他们没有被终止.所以新线程没有开始.

所以我搜索了我的项目,我的代码中有大约20个位置的Task.Run.

我在调用'async Task'方法时使用它,即使它没有必要使用后台线程.

所以,我将通过使用'async void'来改变它.但我已经这样改变了.没问题

假设AAAAA()是我正在使用的一些nuget库的'异步任务'方法.所以我无法改变方法.

void Something() 
{
...
    Task.Run(async () => await XXXXX.AAAAA());
...
}
Run Code Online (Sandbox Code Playgroud)

async void Something() 
{
...
 await XXXXX.AAAAA();
...
}
Run Code Online (Sandbox Code Playgroud)

但有时,我遇到了我无法轻易改变异步方法.所以我那时候会改变这样的.

void Something() 
{
...
 AA();
...
}

async void AA() 
{
await XXXXX.AAAAA();
}
Run Code Online (Sandbox Code Playgroud)

除非没有后台线程,否则这样可以吗?

我问这个问题是因为我看了很多不说使用"Async void"的视频.

我想知道如果没有问题我是否可以这样使用.

任何建议都会对我有帮助.谢谢.

c# multithreading xamarin xamarin.forms

0
推荐指数
1
解决办法
4406
查看次数

当在第二个选项卡上按下后退按钮时,react-navigation 的奇怪行为。(反应原生)

我正在使用 React Native 制作应用程序。我有一个 tabNavigator。

如果我转到第二个选项卡并按顶部导航栏上的后退按钮,它会转到第一个选项卡而不是返回上一个屏幕。

我也在 react-navigation 的示例应用程序中注意到了这种行为,所以也许它是这样制作的。

无论我从哪个选项卡按下后退按钮,我都不能让我的选项卡导航器转到上一个屏幕吗?

react-native react-navigation

0
推荐指数
1
解决办法
1183
查看次数