问题标签 [android-viewgroup]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
666 浏览

android - 如果当前行中没有空格,则用换行符包装其子项的 ViewGroup

我在这里尝试过旧的解决方案: Android 的换行小部件布局

是否有一种新的正确方法来实现此功能?

0 投票
1 回答
4211 浏览

android - 是否可以在 Android 中创建没有 xml 的视图?

我正在尝试创建没有 xml 的自定义视图

并在活动中使用它

但是 LayoutParams 不起作用,它什么也不显示

我必须使用这个 onLayout 让它显示,并且基本布局不是 MATCH_PARENT 并且图标不是 WRAP_CONTENT

我也尝试在布局中添加图标,但应用程序会崩溃

是否可以在不硬编码大小和位置的情况下创建此布局?

我检查了RelativeLayout.LayoutParams,但找不到任何方法将其centerInParent 设置为true。

http://developer.android.com/reference/android/widget/RelativeLayout.LayoutParams.html

0 投票
0 回答
148 浏览

android - 从父级到子级的 Android 触摸事件调度

我有一个父视图组,里面有一个子视图。我注意到触摸事件期间的一些行为与我关于如何调度触摸事件的心理模型不同。

视图组 A 占据整个屏幕,视图 B 以编程方式添加到 A(使用 A.addView(B))并且仅占据屏幕的一部分。对于 A 和 BI 都覆盖 onTouchEvent(MotionEvent event) 方法,但仅此而已。

如果我将手指触摸到屏幕并在视图 B 的范围内抬起它,我注意到触摸事件直接路由到 B 的 onTouchEvent() 方法,而没有点击 A 的 onTouchEvent() 方法。B 接收 DOWN、MOVE 和 UP 动作,并为每个动作返回 true。

如果然后我用手指触摸屏幕并在 Viewgroup A 的范围内但在 View B 的范围之外抬起,那么我看到的行为违反了我关于如何调度触摸事件的心理模型。当我这样做时,视图 B 再次在其 onTouchEvent() 中接收到 DOWN、MOVE 和 UP 操作,即使 B 没有被点击。我本来希望 A 收到这些动作。如果我然后用我的手指做完全相同的动作(在 A 内部但在 B 外部触摸和抬起),那么 A 的 onTouchEvent() 会按预期接收 DOWN、MOVE 和 UP 动作。

就好像在其中一个 View 接收到触摸事件后,系统将其设置为接收下一次触摸,而不管触摸的位置如何。

有什么基本的我不明白吗?

此外,我的一个资源提到我需要在我的视图组/视图中手动管理命中测试,以确定视图组何时收到命中,是否应该将命中分派给孩子。这对我来说是有道理的,但是,在我提到的第一种情况下,系统似乎已经为我做到了,因为点击会自动发送给孩子。哪个是正确的做法,让系统处理还是自己处理命中逻辑?

我使用这些资源让我走到了这一步,但它们似乎没有明确涵盖这一点:

http://codetheory.in/understanding-android-input-touch-events/ https://guides.codepath.com/android/Gestures-and-Touch-Events

0 投票
3 回答
2903 浏览

android - 将布局权重设置为动态添加的视图在 Android 中不起作用

我正在开发一个 Android 应用程序。在我的应用程序中,我正在动态添加视图并在代码中设置其权重。但它不起作用。

这是我用于动态视图容器的 XML:

这就是我动态添加控件的方式。

这是我的 realated_item_view.xml

但它没有正确设置它的权重。实际上,每行有两列,每列必须是屏幕宽度的一半。但它不起作用。

这是屏幕截图:

在此处输入图像描述

如您所见,它不会一半一半地占用屏幕。我该如何解决?

0 投票
1 回答
931 浏览

android - 在显示 PopupMenu 时旋转,获取 android.view.WindowLeaked

我通过扩展创建了一个简单的自定义布局ViewGroup。我创建 aButton和 a PopupMenuon init()。如果按钮被按下,PopupMenu则会显示。问题是,当PopupMenu显示时,如果我旋转设备,我会收到以下错误消息。

E/WindowManager: android.view.WindowLeaked: Activity has leaked window android.widget.PopupWindow$PopupDecorView{c44e7da VE..... ......ID 0,0-392,960} 最初添加在这里

我发现了一个类似的问题(PopupMenu PopupWindow$PopupViewContainer 泄漏),解决方案是调用dismiss(). PopupMenu onStop()但是,由于这不是一个活动,而是一个ViewGroup,所以我没有onStop(). 所以,我试图找到一个类似名称的事件,并找到onDetachedFromWindow(). 我打电话dismiss()进来onDetachedFromWindow()

onDetachedFromWindow()确实在屏幕旋转之前被调用,但我仍然收到 WindowLeaked 错误消息。

我怎么解决这个问题?实际上,应用程序似乎工作正常,我得到的只是日志中的错误消息。这个错误可以忽略吗?

0 投票
0 回答
82 浏览

android - 如何创建具有随机项目高度的两列列表

我想创建这样的布局:

在此处输入图像描述

它是一个ViewGroup有两列的。项目宽度是固定的,但每个都有随机高度。

我该如何实施?我应该使用GridView,ListView还是 ...?

0 投票
1 回答
55 浏览

android - 两种视图添加方法之间的性能差异

动态添加视图(使用 ViewGroup 的添加/删除视图方法)或将它们放入静态布局 xml 文件并让它编译成二进制形式并在运行时膨胀(常规方式)在性能方面会有什么差异?

我知道 ViewStub 是一种选择,但我想知道根本不充气是否有区别。

谢谢

0 投票
4 回答
1795 浏览

android - 在卡片视图中使回收站视图可点击

Click上的卡片视图正在工作。但回收站视图的区域不可点击。如何使其可点击以便捕获卡片视图事件。

0 投票
0 回答
37 浏览

android - 在 Listview 的自定义行中使用 ViewGroup 导致转换问题

我有一个带有自定义行的 ListFragment,如下所示。

片段.xml

自定义行.xml

我收到以下错误:

如果我从 Custom_row.xml 中删除 LinearLayout ViewGroup 并直接添加 textView 但我的自定义行需要多个视图并且我已经厌倦了使用所有类型的 ViewGroups 但它们都给出了上述转换错误

0 投票
2 回答
212 浏览

java - 尝试获取 ViewGroup 的 Floating-EditText 子项

我正在尝试从视图组(LinearLayout)中获取Floating EditText 。简单的EditText工作正常,但无法使用它。

这是我的代码:

XML 代码:

Java代码:

这个(android.support.design.widget.TextInputLayout)介于 LinearLayout 和 EditText 之间,我不知道如何解决它。

提前致谢