标签: margins

堆栈视图受限于边距不留边距

我遇到了一些我不知道如何解决的问题......我正在学习一些有点旧的课程(它们是在 Swift 3 中完成的),我遇到了约束和边距的问题。我只是在听课,它说对于该堆栈视图,我需要设置以下约束: 给定约束

在向堆栈视图添加约束后,我得到了这个结果:

结果

这是我期望的结果:

预期结果

所以我的问题是为什么堆栈视图会超过边距,以及如何修复它。(提醒课程在 Swift 3 中,他们在边距内获得了堆栈视图)

xcode margins ios stackview autolayout

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

尝试创建边距时,UILabel textRectForBounds无效

我试图缩进UILabel中的文本,在显示背景颜色的文本周围留下一些边距.根据这里的建议,我已经覆盖textRectForBounds:limitedToNumberOfLines:如下:

- (CGRect)textRectForBounds:(CGRect)bounds limitedToNumberOfLines:(NSInteger)numberOfLines
{
    CGRect intermediate = CGRectMake(bounds.origin.x+MARGIN,bounds.origin.y+MARGIN,bounds.size.width-2*MARGIN,bounds.size.height-2*MARGIN);
    return [super textRectForBounds:intermediate limitedToNumberOfLines:numberOfLines];
}
Run Code Online (Sandbox Code Playgroud)

但无论我做什么,文本都会紧贴矩形的左边界.好像绘图忽略了返回的CGRect的原点部分(虽然它似乎是在考虑宽度部分,好像我减少到中间的宽度,例如bounds.size.width-200textRectForBounds返回的矩形适当地缩小并且文本被绘制成一个很瘦的专栏).

那么:我需要做些什么UILabel来使绘图尊重textForRectBounds-returned-rect的origin.x和origin.y?我宁愿不重写UILabeldrawTextInRect,如果我能帮助它.

更新:这是很久以前的事了,我不记得为什么另一个问题不适合我.我相信这是因为我试图拥有UILabel多行,而这里的解决方案并不适用.

iphone margins uilabel ios

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

设置水平和垂直边距

在面板中设置水平和垂直边距的方法是什么?(我们在html中也一样style="margins:30px")

java swing margins jpanel

6
推荐指数
2
解决办法
2万
查看次数

在IE8中,垂直负边距不起作用?

第一次问我自己的问题:)

我正在一个网站上工作,我尝试使用通常的技巧将其垂直扩展到客户端窗口的底部:

html, body { height: 100%; }
.container { min-height: 100%; }
Run Code Online (Sandbox Code Playgroud)

然后,我想在主要内容上方添加一些标题,在底部添加粘性页脚.我把它们都装在自己的容器里,然后将标题拉到顶部,如下所示:

.top { position: relative; z-index: 1; height: 168px; }
.end { height: 58px; }
Run Code Online (Sandbox Code Playgroud)

知道了页眉和粘性页脚的高度,然后我开始调整页面的总高度,这样它就会完全填满客户端窗口(没有滚动条),除非内容太长.我用负边距做了这个:

.container { overflow: hidden; min-height: 100%; margin-top: -164px; margin-bottom: -58px; }
.container-in { margin-top: 164px; margin-bottom: 58px; }
Run Code Online (Sandbox Code Playgroud)

第二个容器在第一个容器内,它是我放置每个页面的实际内容的地方.

因此,这在Firefox 4/5上运行得很好 - 绝对没有任何关闭,它就像预期一样.Chrome似乎还可以.但是,在IE8上,它忽略了.container的负余量(我查看了开发人员工具).容器在.top之后开始,因此.top和.container-in之间存在164px的间隙,因为.container-in的边距.

有趣的是 - 如果我将IE8切换到IE7兼容模式,这个问题就不再发生了!在IE7模式下,负边距表现得很好,但当然其他一些东西也会中断,因此告诉IE使用兼容模式不是一种选择.

有关如何解决此问题的任何想法/使用不同的解决方案在所有浏览器中获得相同的效果(不需要IE7)?我做错了吗?

编辑:经过一些更多的乐趣和游戏,我发现通过用负顶部替换负边距:坐标(并将所有容器设置为相对),它在IE8上完美运行但现在它在Firefox 的html容器下面留下了222px的间隙(根据萤火虫).困惑!

EDIT2:从技术上讲,我相信我知道这里有什么问题.Internet Explorer 8认为负边距是"溢出",并且由于溢出:隐藏,它会杀死边距.如果我删除溢出:隐藏它不再有这种行为,但它打破了设计的其余部分.任何人都有任何想法吗?

html css margins internet-explorer-8

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

Java Swing - 使用Line Border在TextArea上设置边距

正如标题所说,我只是试图在TextArea上设置一个LineBorder设置的边距(提供一些填充).没有设置边框,.setMargins工作正常.这是特定的代码块.

aboutArea = new JTextArea("program info etc.....");

Border border = BorderFactory.createLineBorder(Color.BLACK);

aboutArea.setSize(400, 200);
aboutArea.setBorder(border);
aboutArea.setEditable(false);
aboutArea.setFont(new Font("Verdana", Font.BOLD, 12));

add(aboutArea);
Run Code Online (Sandbox Code Playgroud)

我尝试过以下各项:

aboutArea.setMargins(10,10,10,10);
.getBorders(aboutArea).set(10,10,10,10);
UIManager.put("aboutArea.margin", new Insets(10, 10, 10, 10));
Run Code Online (Sandbox Code Playgroud)

但是在应用边框后没有任何影响边距,填充总是为0.任何想法如何在带有边框的textArea上设置填充?

java swing textarea margins insets

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

Android GridView不完美,如何删除额外的空白区域

我有一个基于GridView的日历.我有以下XML布局,选择器设置为null,因此android:listSelector="@null"根据我从这个网站得到的建议.现在我在GridView的右边有一些像素宽的条带.为什么?我已经尝试了所有我能做到的但是有用的.这是我的XML布局:

        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="fill_parent"
            android:layout_height="match_parent"
            android:orientation="vertical" >

            <GridView
                android:id="@+id/calendar"
                android:layout_width="fill_parent"
                android:layout_height="match_parent"
                android:horizontalSpacing="-1px"
                android:numColumns="7"
                android:stretchMode="columnWidth" 
                android:gravity="center"
                android:verticalSpacing="-1px"
                android:listSelector="@null" >

            </GridView>

        </LinearLayout>
Run Code Online (Sandbox Code Playgroud)

我得到的是这张照片:

在此输入图像描述

android gridview margins selector

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

默认的EditText填充值是多少?

我有这样的EditText定义:

    <EditText
        android:id="@+id/input_password"
        android:hint="@string/password"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="textPassword" />
Run Code Online (Sandbox Code Playgroud)

它有一些默认的填充,看起来像"Show layout bounds"选项: 在此输入图像描述(或者它真的是边缘,我不确定.我指的是红色内盒和蓝色角落之间的空间).但这些填充/边距的价值是多少?在platforms/android-19/data/res/values/themes.xml我发现的Widget.EditText样式定义如下:

<style name="Widget.EditText">
    <item name="android:focusable">true</item>
    <item name="android:focusableInTouchMode">true</item>
    <item name="android:clickable">true</item>
    <item name="android:background">?android:attr/editTextBackground</item>
    <item name="android:textAppearance">?android:attr/textAppearanceMediumInverse</item>
    <item name="android:textColor">?android:attr/editTextColor</item>
    <item name="android:gravity">center_vertical</item>
</style>
Run Code Online (Sandbox Code Playgroud)

但是没有提到任何边距/填充.那他们在哪里定义?

layout android margins padding android-edittext

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

MigraDoc中的保证金

我正在使用MigraDoc和PDFsharp,我需要为PDF文档中的每个页面设置不同的边距.运用

  document.DefaultPageSetup.RightMargin = 20;
  document.DefaultPageSetup.LeftMargin = 20;
Run Code Online (Sandbox Code Playgroud)

我知道我的文档中的所有页面都具有相同的边距.如何设置文档中每个页面的边距?谢谢

c# margins migradoc

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

将y轴标签移动到heatmap的左侧

我想将y轴标签移动到heatmap的左侧.(这与关于在热图上移动轴的问题类似,但不一样)虽然我可以通过编辑heatmap.2函数的第290行来移动轴,但是值会覆盖实际的热图.

if (is.null(srtRow) && is.null(colRow)) {
    axis(4, iy, labels = labRow, las = 2, line = -0.5 + offsetRow, 
         tick = 0, cex.axis = cexRow, hadj = adjRow[1], padj = adjRow[2])
  }

  else {

    if (is.null(srtRow) || is.numeric(srtRow)) {

      xpd.orig <- par("xpd")

      par(xpd = NA)
      ypos <- axis(4, iy, labels = rep("", nr), las = 2, #change
                   line = -0.5, tick = 0)
      text(x = par("usr")[2] + (1 + offsetRow) * strwidth("M"), 
           y = ypos, labels = labRow, adj = …
Run Code Online (Sandbox Code Playgroud)

axis margins heatmap

6
推荐指数
0
解决办法
1198
查看次数

删除 R 饼图中多余的空格?

有没有什么方法可以减少使用 R 中的基本绘图工具生成的饼图周围的空白量?

我想创建一个多面板图形,但我无法找到减少绘图周围空白量的方法。

示例代码:

par(mfrow=c(2,1))
pie(1:5)
pie(rep(1,5))
Run Code Online (Sandbox Code Playgroud)

我尝试使用maromiomainside par(),但这些向量的所有值似乎都已设置为零,并且不接受负值。有什么办法解决这个问题吗?

r margins pie-chart

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