如何在 MonoDroid 的代码隐藏中设置边距?
Posted
技术标签:
【中文标题】如何在 MonoDroid 的代码隐藏中设置边距?【英文标题】:How can I set Margin in Code-behind for MonoDroid? 【发布时间】:2012-11-28 05:00:33 【问题描述】:这个问题很简单,但我什么也没找到。如何在代码隐藏中为小部件设置边距。
我在Xamarin's site 中找到了此文档,但我无法将其用于 ImageView
我也在 ImageView 中尝试了 Layout() 方法,但没有成功。
ImageView imgView = FindViewById<ImageView>(Resource.Id.imageView);
imgView.Layout(10, 10, 10, 10);
【问题讨论】:
这可能会有所帮助:***.com/questions/3416087/… 我已经看过了,这个方法在xamarin中不存在。谢谢 【参考方案1】:您是否尝试过使用 FrameLayout 的 LayoutParams?
这是一个例子:
您的图片:
ImageView imgView = FindViewById<ImageView>(Resource.Id.imageView);
你的图片参数:
FrameLayout.LayoutParams imgViewParams = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.WrapContent, FrameLayout.LayoutParams.WrapContent, 0.0f);
imgViewParams.SetMargins(10, 10, 10, 10);
设置图像参数:
imgView.LayoutParameters = imgViewParams;
编辑:将 LinearLayout.LayoutParameters 更改为 FrameLayout.LayoutParameters!
【讨论】:
我试图创建一个 LinearLayout.LayoutParams 并设置到 ImageView 中,但问题是我有一个框架布局而不是线性布局,我只是更改为 FrameLayout.LayoutParams 并且它可以工作,谢谢。【参考方案2】:你能在你的布局中添加一个 LinearLayout 吗?
您可以将 ImageView 包裹在其中并添加边距!
像这样:
<LinearLayout
android:orientation="horizontal"
android:layout_
android:layout_
android:layout_margin="10dp" >
<ImageView
your imageview stuff />
</LinearLayout>
【讨论】:
【参考方案3】:不知道这是否有帮助,但您可以尝试像这样更改边距值,看看效果如何:
imgView.margin = new thickness(leftvalue,topvalue,rightvalue,botvalue);
【讨论】:
以上是关于如何在 MonoDroid 的代码隐藏中设置边距?的主要内容,如果未能解决你的问题,请参考以下文章
在 Android 中,如何以编程方式在 dp 中设置边距?
Android:以编程方式在 FrameLayout 中设置边距 - 不起作用