Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xamarin.forms Xamarin表单:根据字符数增加编辑器高度_Xamarin.forms_Height_Editor - Fatal编程技术网

Xamarin.forms Xamarin表单:根据字符数增加编辑器高度

Xamarin.forms Xamarin表单:根据字符数增加编辑器高度,xamarin.forms,height,editor,Xamarin.forms,Height,Editor,在我的xamarin表单项目中,我有一个如下所示的编辑器 在上面键入消息时,我需要根据字符数增加编辑器的高度。 下面是我的底部部分的完整代码,我添加了一个框架布局,用于使入口角为圆形: <StackLayout HorizontalOptions="FillAndExpand" x:Name="tweetBox" VerticalOptions="End" Ma

在我的xamarin表单项目中,我有一个如下所示的编辑器

在上面键入消息时,我需要根据字符数增加编辑器的高度。

下面是我的底部部分的完整代码,我添加了一个框架布局,用于使入口角为圆形:

<StackLayout
                HorizontalOptions="FillAndExpand"
                x:Name="tweetBox"
                VerticalOptions="End"
                Margin="0,0,0,10"
                BackgroundColor="#f2f2f2"
                Orientation="Horizontal">

                <Image 
                     WidthRequest="25"
                     HeightRequest="25"
                     VerticalOptions="Center"
                     Source="ic_add_blue_xx.png"
                     Margin="10,5,-5,5">
                    <Image.GestureRecognizers>
                        <TapGestureRecognizer
                            Tapped="ShowPicureOptions"
                            NumberOfTapsRequired="1" />
                    </Image.GestureRecognizers> 
                </Image>

                <Frame
                    Padding="0"
                    Margin="5,5,0,5"
                    HorizontalOptions="FillAndExpand"
                    CornerRadius="10">

                    <Editor 
                        x:Name="tweetText"
                        HorizontalOptions="FillAndExpand"
                        VerticalOptions="Center"
                        FontFamily="Bold"
                        BackgroundColor="White"
                        TextColor="#959595"
                        AutoSize="TextChanges"
                        PlaceholderColor="#959595"
                        Placeholder="  Enter Message..."/> 
                </Frame>

                <Image 
                    VerticalOptions="Center"
                    WidthRequest="25"
                    Margin="5,5,10,5"
                    HeightRequest="25"
                    HorizontalOptions="End"
                    Source="ic_send_xx.png"> 
                    <Image.GestureRecognizers>
                        <TapGestureRecognizer
                            Tapped="SendTweet_Icon_Clicked"
                            NumberOfTapsRequired="1" /> 
                    </Image.GestureRecognizers>
                </Image>
            </StackLayout>

它现在是Xamarin.Forms中内置的。只需使用
编辑器
控件并将
自动调整大小
属性设置为
文本更改
。请注意,设置
高度请求时,自动调整大小将不起作用

更多信息请点击此处:


更新:根据评论,我们决定用网格替换StackLayout有助于实现结果。这是因为StackLayout只会占用子级(最初)占用的空间。网格能够动态增长。

添加autosize属性后不工作。键入消息时,文本显示在同一行中。仅显示一行,在完成第一行后不会转到新行,并且编辑器高度没有更改。请使用您拥有的一些不适用于您的代码更新您的问题我创建了一个示例项目,该功能在那里运行良好,但当我将其应用于主项目时,它不起作用。我在问题中添加了底部部分的全部代码(+图像、编辑器和发送图标),您能检查一下吗?尝试用
网格替换
堆栈布局
,我认为这没有内置功能。可能操作系统会有某种最大值。否则,您需要挂接到
编辑器的
SizeChanged
事件中,并自行实现一些功能。您的代码对我来说非常适合。不要执行,而是正确地提供文本并检入windows窗体预览器。@CGPA6.4对于我来说,条目的高度没有变化,在删除框架后尝试过,但没有变化。文本在一行中,没有多行。@CGPA6.4我创建了一个示例项目,该功能在那里运行良好,但当我将其应用于主项目时,它不起作用。我在问题中添加了底部的全部代码(+图像、编辑器和发送图标),您能检查一下吗?从
StackLayout
中删除
Orientation=“Horizontal”
比它应该工作的多。@CGPA6.4从StackLayout中删除Orientation=“Horizontal”可以工作,但图标是垂直格式的,我需要这3个图标在底部的水平方向