在Xamarin.iOS中实现TextLayer的垂直对齐

代码如下: public class SHLCTextLayer : CATextLayer { public SHLCTextLayer(IntPtr handle) : base(handle) { } public SHLCTextLayer() : base() { } public SHLCTextLayer(NSCoder coder) : base(coder) { } public SHLCTextLayer(NSObjectFlag t) : base(t) { } public override void DrawInContext(CGContext ctx) { try { var height = this.Bounds.Size.Height; var fontSize = this.FontSize; var yDiff = (height - fontSize) / 2 - fontSize / 10; ctx.SaveState(); ctx.TranslateCTM((nfloat)0.0f, yDiff); base.DrawInContext(ctx); ctx.RestoreState(); } catch (Exception e) { ErrorReporter.Report(e); } } }……

阅读全文

Xamarin开发获取联系人信息的方法

在输入法开发中,需要获取通讯录的联系人姓名,然后将其编码导入词库中,本文就简单介绍一下两个平台上获取联系人信息的方法; Xamrin.Android平台 1.添加权限申明 在AndroidManifest.xml文件中间添加如下权限申明: <!-- 读取联系人权限,上传联系人需要用到此权限 --> <uses-permission android:name="android.permission.READ_CONTACTS"……

阅读全文

解决Xamarin.Android绑定第三方库时类型丢失的问题(一)

现象 今天在做一个第三方库绑定时,遇到如下情况: ![](http://image.suihanime.com/解决Xamarin.Android绑定第三方库时类型丢失的问题(一)_00001.jpg) 摘取其中一段代码如下: /Users/huangboru/myfile/xamarin_workspace/version4/CrashEyeTestPlus/obj/Debug/generated/src/Com.Xsj.Crasheye.ActionError.cs(88,88): Error CS0234: The type or namespace name 'IInterfaceDataType' does not exist in the namespace 'Com.Xsj.Crasheye' (are you missing an assembly reference?) (CS0234) (CrashEyeTestPlus) 错误代码的意……

阅读全文

iOS12下跳转出现NSInternalInconsistencyException的解决方法

问题现象 在洛书1.7.5版本中出现这样一个bug:从键盘跳转输入法主程序失败;导入文件时跳转主程序也失败; 调试应用时出现如下错误: Objective-C exception thrown. Name: NSInternalInconsistencyException Reason: Application has LSSupportsOpeningDocumentsInPlace key, but doesn't implement application:openURL:options: on delegate <AppDelegate: 0x283eda9c0> 原因分析 跳转时application:openURL:options:不存在导致出错;此前我重载了applicat……

阅读全文

服务器操作中的常用命令

以下命令在CentOS下有效 查看内存使用情况 使用命令:free -m 查看CPU使用情况 使用命令:top 查看服务器ip 使用命令:ip addr show 查看本机时间 使用命令:date 查看端口命令 使用命令:netstat -lnpt | grep -w 80 #显示TCP相关的监听80端口的状态 链接:https://my.oschi……

阅读全文

解决SSH远程登录乱码问题

以下命令在CentOS下有效 这主要远程服务器的语言编码与终端的编码不一致。 在远程服务器端的 ~/.bashrc 文件里面加入以下代码: export LANG='UTC-8' export LC_ALL='en_US.UTF-8' 然后bash一下,中文就可以正常显示。 下次登录 .bashrc 文件自动运行,中文照样正常显示。 亲测有效。……

阅读全文

手机输入法开发的新手入门指南

长期以来,总是有网友给我留言或者私信关于输入法开发方面的问题,诸如零基础如何开始开发一款输入法、开发输入法需要多深厚的数学功底之类的问题。于是萌生了把这些回答汇集一篇文章的想法。 据说王小波也开发过输入法,据他说他用自己写的输入法写文章,体验还不错。当然了,那个时代的输入法无论是从……

阅读全文

如何开发Android原生库并应用到Xamarin.Android

本文将向大家介绍如何使用Android Studio开发原生库,并将其应用到Xamarin.Android的方法步骤; 本文中我所使用的Android Studio版本和Visual Studio For Mac版本情况分别如下: 下述内容在以上两个版本的开发环境中是有效的。 Android Studio开发部分 首先,新建……

阅读全文