自定义编辑器中的表情符号



我正在使用 xamarin 表单(我是新手(处理聊天应用程序,发生的事情是,当我点击该编辑器框时,我无法在该自定义编辑器中看到表情符号图标。如何纠正这种情况的任何建议??

这是系统控制用例

这是自定义控件用例,缺少上述功能

这是我使用的自定义编辑器:

ScrollView Padding="3,2,3,2" Margin="0" VerticalScrollBarVisibility="Never">
<controls2:CustomEditor x:FieldModifier="Public" PlaceholderColor="LightGray" Placeholder="Type a message" AutoSize="TextChanges" x:Name="SendMessage" IsSpellCheckEnabled="True" HorizontalOptions="FillAndExpand"
VerticalOptions="StartAndExpand" Margin="0" FontSize="16" Text="{Binding SendMessageText}" Keyboard="Chat" TextColor="Black"/>
</ScrollView>

关于代码::

public class CustomEditor : Editor
{
public CustomEditor()
{
TextChanged += OnTextChanged;
}
~CustomEditor()
{
TextChanged -= OnTextChanged;
}
private void OnTextChanged(object sender, TextChangedEventArgs e)
{
InvalidateMeasure();
}
}

安卓编辑器渲染代码:

public class CustomEditorRenderer : EditorRenderer
{
public CustomEditorRenderer(Context context) : base(context)
{
}
[System.Obsolete]
protected override void OnElementChanged(ElementChangedEventArgs<Editor> e)
{
base.OnElementChanged(e);
if (Control != null)
{
GradientDrawable gd = new GradientDrawable();
gd.SetColor(global::Android.Graphics.Color.Transparent);
this.Control.SetBackgroundDrawable(gd);
this.Control.SetRawInputType(InputTypes.TextFlagNoSuggestions);
Control.Background = new ColorDrawable(Android.Graphics.Color.Transparent);
Control.VerticalScrollBarEnabled = false;
Control.NestedScrollingEnabled = false;
}
}
}

代码中的以下行是表情符号图标未显示的原因。

this.Control.SetRawInputType(InputTypes.TextFlagNoSuggestions);

删除标志设置会显示表情符号。但是,"无建议"标志行为会丢失。我尝试在网上搜索替代方案,但找不到。希望你知道。

最新更新