Tag: 布局

AutoLayout:removeFromSuperview / removeConstraints抛出exception,并崩溃困难

我们有select地使用自动布局约束,主要是将标签与可编辑的字段元素(通常是UITextView,UITextField)相关联。 但是,自从实现这些字段的自动布局以来,我们看到了一个令人讨厌的exception,并且在卸载视图,释放等时崩溃。exception正在发生,因为它在卸载之前试图从视图中除去约束。 我们的视图/控制器层次结构是这样的: UITableViewController (plain style, but with cell appearance to mimic grouped style) –> UITableViewCell —-> UIViewController (container for editable form) ——> UICollectionViewController (editable form) ——–> UICollectionViewCell ———–> UIViewController (editable field) ————–> UILabel (field label) **HAS CONSTRAINTS** ————–> UITextView / UITextField (field value) **HAS CONSTRAINTS** 很多时候,当上层表格单元被释放/replace/重新加载时,我们看到一个巨大的exception,然后崩溃,因为它试图释放/卸载内部的视图层次结构。 我试图通过捕获exception(无帮助)来缓解崩溃,并且在释放/卸载( viewWillDisappear:之前强制删除受影响的视图和所有子视图上的所有约束,帮助。 我甚至试图逐个删除这些约束,看是否有一个特别的问题导致了麻烦,但是当我们调用removeConstraint:或者removeConstraints:在一个容器上准备消失时,所有这些约束都炸毁了。 我很困惑! 这是我们例外的一小部分 – 大约有大约3000条线已经被切掉,所以如果你需要更多的话,请问。 Exception […]

iOS 8 UIPageViewController在转换后应用约束

我的应用程序有一个多窗格教程式的视图,用户通过滑动来了解应用程序。 如本教程中所述,这非常实现。 实施了iOS 7和8之后,我正在比较它们是如何工作的,并发现了后者的问题 – 我在这里运行Xcode 6 GM。 看起来,UIPageViewController在转换完成后呈现视图。 我覆盖了委托方法,看看发生了什么事情: – (void)pageViewController:(UIPageViewController *)pageViewController willTransitionToViewControllers:(NSArray *)pendingViewControllers { NSLog(@"Frame size before: %@", NSStringFromCGRect([(UIViewController*)pendingViewControllers[0] view].frame)); } – (void)pageViewController:(UIPageViewController *)pageViewController didFinishAnimating:(BOOL)finished previousViewControllers:(NSArray *)previousViewControllers transitionCompleted:(BOOL)completed { NSLog(@"Frame size after: %@", NSStringFromCGRect([(UIViewController*)previousViewControllers[0] view].frame)); } 这里是一个示例输出: Frame size before: {{0, 0}, {600, 600}} Frame size after: {{0, 0}, {320, 568}} 如下所示:向左滑动以拉取下一个视图,并在新视图的底部注意到一个32-pt的空白区域。 一旦转换完成,就会跳入正确的布局。 […]

C如何“绘制”二进制树到控制台

什么algorithm可以用来在控制台中绘制二叉树? 树在C中实现。例如,控制台中将显示一个数字为2 3 4 5 8的BST,如下所示:

DIV与表或CSS与愚蠢

我知道表格是表格数据,但是使用它们进行布局是非常诱人的。 我可以处理DIV来获得三列布局,但是当你有4个嵌套的DIV时,就会变得棘手。 是否有一个教程/参考说服我使用DIV的布局? 我想用DIV,但是我拒绝花一个小时把DIV / SPAN放在我想要的地方。 @GaryF: 蓝图CSS必须是CSS最好的秘密。 伟大的工具 – 蓝图网格CSS生成器 。

Android:如何使LinearLayout内的所有元素大小相同?

我想创build一个对话框来显示video标题和标签。 在文本下方,我想添加button查看,编辑和删除,并使这些元素相同的大小。 有谁知道如何修改.xml布局文件,以使LinearView内的元素大小相同? 当前的布局文件如下所示: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical"> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/txtTitle" android:text="[Title]" > </TextView> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/txtTags" android:text="[Tags]" > </TextView> </LinearLayout> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/btnPlay" android:text="View"> </Button> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/btnEdit" android:text="Edit"> </Button> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/btnDelete" android:text="Delete"> </Button> </LinearLayout> </LinearLayout> 如果有人可以通过修改粘贴的文件内容来显示解决scheme,我将不胜感激。 谢谢!

如何在右侧显示androidcheckbox?

默认情况下,androidcheckbox在右侧显示文本,在左侧显示checkbox 我想在右侧显示checkbox,并在左侧显示文字 我怎么做到这一点?

带有ListView和button的Android布局

好的,这个特定的布局只是让我烦恼。 似乎无法find一种方法来获得一个listView,在底部有一排button,这样listview不会覆盖button的顶部,所以button总是被捕捉到屏幕的底部。 这是我想要的: 删除了死的ImageShack链接 这似乎应该是如此的容易,但我所尝试的一切都失败了。 任何帮助? 这是我现在的代码: RelativeLayout container = new RelativeLayout(this); container.setLayoutParams(new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT)); //** Add LinearLayout with button(s) LinearLayout buttons = new LinearLayout(this); RelativeLayout.LayoutParams bottomNavParams = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); bottomNavParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); bottomNavParams.addRule(RelativeLayout.CENTER_HORIZONTAL); buttons.setLayoutParams(bottomNavParams); ImageButton newLayer = new ImageButton(this); newLayer.setImageResource(R.drawable.newlayer); newLayer.setLayoutParams(new LinearLayout.LayoutParams(45, LayoutParams.FILL_PARENT)); buttons.addView(newLayer); container.addView(buttons); //** Add ListView layerview = new ListView(this); RelativeLayout.LayoutParams listParams = new […]

Android XML布局中的<merge>和<include>用法的简单示例

我很好奇Android的XML布局中的<merge>和<include>标签。 我已经阅读了两篇教程,但尚未find一个简单的示例用法。 如果有人能提供这样一个例子或给一个指针,会很高兴。

检查导航栏

我试图检查是否在Android导航栏是否存在加载,以便我可以相应地调整布局,有没有人有任何build议? 这是我想要检测的导航栏: PS到目前为止,我发现的所有方法都是“坏”的方法来尝试删除酒吧,我不想这样做。

固定表格单元宽度

很多人仍然使用表来布局控件,数据等 – 这是一个stream行的jqGrid的例子。 然而,有一些魔法发生,我似乎无法理解(它的桌子大声哭喊,可能会有多less魔法?) 怎么可能设置一个表的列宽,并像jqGrid一样遵守!? 如果我试图复制这个,即使我设置了每一个<td style='width: 20px'> ,一旦这些单元格的内容大于20像素,单元格就会展开! 任何想法或见解?