草庐IT

viewgroups

全部标签

将ListView添加到LinearLayout时ViewGroup.resetResolvedTextDirection中的Android StackOverflowError

我之前曾问过一个关于这个错误的问题(AndroidStackOverflowErrorinViewGroup.resetResolvedTextDirection),但是现在我设法在模拟器中重现了这个错误,并缩小了发生这个问题的具体位置。当我开始我的Activity时,我有一个AsyncTask,它从我的服务器中提取必要的数据并创建所有View。在AsyncTask的run()方法中,我正在创建一个自定义View(并将其添加到Activity的主视图中-但现在这并不重要):ListingViewlisting=newListingView(MainActivity.this);List

android - 在自定义 ViewGroup 中为 child 设置动画的正确方法

我正在构建一个自定义的ViewGroup,它将一群child安排在特定的位置。在特定的触发条件下(比如按下外部按钮),子项会动画到新的位置。我尝试这样做的方法是启动一个计时器,并在每次计时器更新时计算新位置,然后调用requestLayout()。当我这样做时,动画有点紧张。有没有更有效的方法来做到这一点?关于自定义重新排列subview的正确步骤有什么想法吗? 最佳答案 你应该实现一个AnimationListener像这样:Animationanim=AnimationUtils.loadAnimation(R.android.

android - ListView 不在自定义 ViewGroup 中刷新

我有一个自定义View组,当我调用菜单按钮让第二个布局(我的菜单)出现时,它允许我的屏幕向右滑动。我的项目中有类似的Activity,但没有菜单,而且工作正常。这是一个简单的View,其中包含一个ListView,显示来自网络服务的数据。当我进行此Activity时,我的listView的内容在数据到达时没有刷新。但是当我按下菜单按钮时,View滑动和我的ListView的内容出现(没有图像,当我滚动我的listView时出现)。这是按下菜单按钮时引发的事件:publicvoidcustomScroll(finalinti){newThread(newRunnable(){@Overr

Android:使用 MotionEvent 对自定义 ViewGroup 中的 View 进行拖放定位

我无法在我创建的自定义ViewGroup上定位View元素,特别是在拖放情况下。我的目标是Android2.2及更高版本,所以我不能真正使用Android3中出现的拖放API。我的自定义ViewGroup称为“NodeGrid”,它扩展了“RelativeLayout”。它的onLayout方法被覆盖,如下所示:@OverrideprotectedvoidonLayout(booleanarg0,intarg1,intarg2,intarg3,intarg4){//pxConversionisamultipliertoconvert1diptoxpixels.//Wewilluseit

android - 子 ImageView 能否超出其父 ViewGroup 边界?

我正在尝试在RelativeLayout中实现由两个ImageView组成的动画Logo。一个是标志图标,另一个是它后面的“射线”。“射线”可以比Logo大3倍。我希望能够为其复合View设置尺寸(例如200dpx200dp),并让Logo拉伸(stretch)该区域,并让光线超出它。可能吗?提前谢谢你。 最佳答案 简答:否。长答:使用FrameLayout. 关于android-子ImageView能否超出其父ViewGroup边界?,我们在StackOverflow上找到一个类似的问

android - android中如果Viewgroups的dispatchDraw方法被覆盖,ImageViews是不可见的

我已经编写了一个自定义View来在圆圈内动态显示图像。我重写了Viewgroup的dispatchDraw方法来画圆。在此之后,子ImageViews不会显示在屏幕上,如果我不重写该方法,它们就会显示在屏幕上。这是我的类(class):publicclassCustomViewextendsRelativeLayout{privatePaintpaint;privateViewmView;privateContextcontext;privatevoidinit(Contextcontext){LinearLayoutlayout=newLinearLayout(context);la

安卓:ViewGroup.MarginLayoutParams 不工作

我用它以编程方式设置边距,但它不起作用,边距未应用。在构造函数中:publicTimeWindow(Contextcontext,intpixels,intleft,inttop){super(context);ViewGroup.MarginLayoutParamsparams=newViewGroup.MarginLayoutParams(pixels,pixels);params.setMargins(left,top,0,0);this.setLayoutParams(params);} 最佳答案 从您的评论中推断,当您的V

android - View 不能转换到 Android 布局中的 ViewGroup

我正在为android应用程序设计布局。这是布局的骨架。我尝试的是使用表格布局,因为GUI可以分解为表格行和列。基本上,如您所见,我想将布局分成两列。这是xml代码我在GUI中出现以下错误Exceptionraisedduringrendering:android.view.Viewcannotbecasttoandroid.view.ViewGroup我认为这说明我们不能对观点进行分组。如果不可能,如何处理这个问题。我来自网络背景。我想我可以像在html中一样将View用作div。 最佳答案 您可以对View进行分组,但您需要使用

android - 从公共(public)资源为自定义 ViewGroup 的多个组件创建 StateListDrawables

我创建了一个扩展ViewGroup的类。此MyCustomViewGroup类的功能之一是充当扩展Button的嵌套类MyButton的容器。我以正常方式从自定义AttributeSet设置MyCustomViewGroup的自定义属性。其中一个属性定义了StateListDrawable以用于MyButton嵌套类实例的背景。我将其存储在类变量mMyButtonBackground中。publicclassMyCustomViewGroupextendsViewGroup{privateDrawablemMyButtonBackground;...每次我在MyCustomViewGr

android - ClassCastException android.view.viewgroup.$layoutParams

TextViewtxt=newTextView(productlist.this);txt.setText(author.get(groupPosition));TextViewtxt1=newTextView(productlist.this);txt1.setText(price.get(groupPosition));txt.setLayoutParams(newLayoutParams(70,LayoutParams.WRAP_CONTENT));txt1.setLayoutParams(newLayoutParams(70,LayoutParams.WRAP_CONTENT)