草庐IT

layoutparams

全部标签

android - java.lang.ClassCastException : android. view.ViewGroup$LayoutParams 没有使用 LayoutParams

我使用一个具有RelativeLayout->ScrollView->LinearLayout的View。我得到了异常(exception):11-2211:17:24.605:ERROR/AndroidRuntime(5161):FATALEXCEPTION:main11-2211:17:24.605:ERROR/AndroidRuntime(5161):java.lang.ClassCastException:android.view.ViewGroup$LayoutParams11-2211:17:24.605:ERROR/AndroidRuntime(5161):atandro

android - LayoutParams 使用什么度量单位?

p我正在使用线性布局并希望设置View的最大高度。在“正常”情况下,我希望View使用“wrap_content”。但是,有时情况可能会将布局推到不希望的大小。发生这种情况时,我想将高度限制为最大300dp。当布局中的列表超过4个列表项时,我使用以下方法设置了View的大小:LinearLayoutlistLayout=(LinearLayout)dialog.findViewById(R.id.listLayout);if(list.size()>4){LayoutParamsparams=newLinearLayout.LayoutParams(LinearLayout.Layou

android - 更改 LayoutParams 对象的属性后,是否需要再次调用 setLayoutParams?

我有一个View(包含一个广告),我需要在某个时间点(加载广告后)缩放以适应屏幕宽度。所以我有一个方法setHeight(myView)计算给定屏幕宽度的正确高度并相应地更改View的LayoutParams。代码的关键部分是这样的:LayoutParamsparams=myView.getLayoutParams();intwidth=myView.getWidth();if(params!=null&&width>0){params.height=(int)Math.round(ratio*width);}这似乎在大多数情况下都有效,但有时View没有缩放。如果我在底部添加以下行,

android - ClassCastException android.widget.FrameLayout$LayoutParams 到 android.support.v4.widget.DrawerLayout$LayoutParams

我正在开发适用于Android的抽屉导航。根据我的要求,我是在抽屉导航中显示项目的GridView和ListView。我在布局xml文件中创建了一个线性布局,并将两个小部件(GridView和ListView)放置在线性布局中。当我运行该文件时,我收到以下错误:java.lang.RuntimeException:无法启动ActivityComponentInfo{com.example.navigationdrawer3/com.example.navigationdrawer3.MainActivity}:java.lang.ClassCastException:android.w

android - 以编程方式设置 LayoutParams

我将游戏内聊天模块放入应用中。我正在将收到的文本消息添加到LinearLayoutView中。我想将布局参数设置为TextView,但以下代码崩溃了,错误消息让我感到困惑。privatevoidaddChat(Stringchat,Stringwhen,Booleanmine){intleftMargin;TextViewtv=newTextView(this);llview.addView(tv);tv.setTextColor(Color.WHITE);tv.setTextSize(2,25);tv.setText(chat);if(mine){leftMargin=5;tv.se

android - 如何为 ImageView 设置LayoutParams()?

我想为ImageView设置LayoutParams但似乎找不到正确的方法。我只能在API中找到各种ViewGroups的文档,而不是ImageView。然而ImageView似乎有这个功能。此代码不起作用...myImageView.setLayoutParams(newImageView.LayoutParams(30,30));我该怎么做? 最佳答案 您需要设置ImageView所在的ViewGroup的LayoutParams。例如,如果您的ImageView在LinearLayout中,那么您创建一个LinearLayou

Android 后台服务启动Actvity

一、问题背景相机自动化测试需求,测试apk通过bindService绑定相机apk里面的一个服务,通过AIDL接口的方式向相机apk发送命令,服务接收到命令之后会拉起相机的Activity。原本没有人为干预的情况下是可以拉起这个Activity的,但是拉起Activity之前,我们如果按下Home键,让测试apk退出的话,后台服务就无法拉起Activity了。经过调查发现Android10之后做了这个限制https://developer.android.google.cn/guide/components/activities/background-starts 二、项目需求框架ITestA

Android 后台服务启动Actvity

一、问题背景相机自动化测试需求,测试apk通过bindService绑定相机apk里面的一个服务,通过AIDL接口的方式向相机apk发送命令,服务接收到命令之后会拉起相机的Activity。原本没有人为干预的情况下是可以拉起这个Activity的,但是拉起Activity之前,我们如果按下Home键,让测试apk退出的话,后台服务就无法拉起Activity了。经过调查发现Android10之后做了这个限制https://developer.android.google.cn/guide/components/activities/background-starts 二、项目需求框架ITestA

Android在子线程更新View

刚开始做Android开发时,一不小心就会在非UI线程中做更新UI的操作,从而造成崩溃,那么这是什么原因呢?那是因为ViewRootImpl在添加View的时候通过以下代码做了线程检测voidcheckThread(){if(mThread!=Thread.currentThread()){thrownewCalledFromWrongThreadException("Onlytheoriginalthreadthatcreatedaviewhierarchycantouchitsviews.");}}很清楚地看到mThread如果不等于当前线程就会抛出异常,而mThread地赋值是在View

Android在子线程更新View

刚开始做Android开发时,一不小心就会在非UI线程中做更新UI的操作,从而造成崩溃,那么这是什么原因呢?那是因为ViewRootImpl在添加View的时候通过以下代码做了线程检测voidcheckThread(){if(mThread!=Thread.currentThread()){thrownewCalledFromWrongThreadException("Onlytheoriginalthreadthatcreatedaviewhierarchycantouchitsviews.");}}很清楚地看到mThread如果不等于当前线程就会抛出异常,而mThread地赋值是在View