Tag: android layout

为什么添加视图到我的布局会改变整个布局的宽度?

我添加了一个视图到我的布局的底部添加一个行分隔符在这个元素的末尾。 问题是,在布局中放置此视图后填充整个屏幕的宽度,但是当我把视图,它显示为正确的大小(在我的测试中大约400dp)。 为什么添加的视图会导致布局填满整个屏幕。 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="start" android:orientation="vertical" android:paddingLeft="6dp" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:id="@+id/text_label" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="16dp" android:textColor="@android:color/darker_gray" android:textSize="12sp" tools:text="Hello, Label" android:paddingBottom="6dp" android:paddingLeft="6dp"/> <TextView android:id="@+id/text_error" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="16dp" android:textColor="@color/sr_red" android:textSize="12sp" tools:text="Error!"/> </LinearLayout> <!– this View causes the parent layout to fill the whole screen width–> <View android:layout_width="wrap_content" android:layout_height="1dp" […]

Youtube风格的浮动视频播放器

我想制作一个浮动视频播放器,就像在Youtube上的播放器一样。 我遇到的问题是使其持续存在,并超越我所有的活动。 总之,我已经在这里有一个工作视图的实现。 完整的代码并不重要,但它本质上是一个填充屏幕的视图,并相应地消耗触摸事件。 当我将它附加到一个单独的活动时它工作正常,但这意味着该视图将只保留在该活动中。 为了在多个活动中工作,我需要另一个覆盖所有视图的活动。 与此有关的问题是,没有被消费的触摸事件似乎不再传递到下面的活动。 我想知道是否有任何实现允许这样的视图是一个完全独立的活动,同时允许一些触摸事件通过时指定。 我不想做一个服务,需要权限来绘制其他应用程序,因为这不是我正在做的。 所有活动仅限于我的内容,Youtube本身不需要此设置。

如何设置我的运动侦听器的存在视图

例如,为VideoView添加双击侦听器。 我希望它支持下面的代码: //Player.kt var vv = findViewById(R.id.player) as VideoView vv.onDoubleClick { // do something }

如何更正以编程方式重新创建布局

我有一个与许多视图组的主要布局。 我尝试获取所有视图元素,并添加到我的自定义布局。 但是,当我试图做到这一点,并不是所有的元素在他们的位置 private fun onStartGravity(context: Context, viewGroup: ViewGroup) { val parent = viewGroup.parent as ViewGroup parent.removeView(viewGroup) newGroup = MyRelativeLayout(context) initCustomViewGroup(context, viewGroup) viewArrayList.forEach { newGroup?.addView(it, it.layoutParams) } parent.addView(newGroup, viewGroup.layoutParams)} 我的函数initCustomViewGroup private fun initCustomViewGroup(context: Context, viewGroup: View): View { if (viewGroup !is ViewGroup) { viewArrayList.add(viewGroup) Log.d("TAG", "oldX = " + viewGroup.x + " oldY = " […]

以编程方式添加布局后,如何通过单击按钮来更改“#”文本视图

目标是增加和减少按钮点击#号 所以上面的图片是滚动视图的内部。 我使用下面的代码将布局添加到滚动视图。 我看起来不是什么东西 if(json.string("status")=="Success"){ var ticketAr:JsonArray<JsonObject>? = json.array("info") for(i in ticketAr?.indices!!){ Log.d("indicies",i.toString()) val inf1 = LayoutInflater.from(context).inflate(R.layout.ticket_individual,null,false) inf1.setId(parseInt(ticketAr[i].string("ntb_id"))) inf1.tck_cat_title.text = ticketAr[i].string("age_group_desc") inf1.tck_cost.text = "$"+ticketAr[i].string("amount") inf1.plus_button.setOnClickListener { Log.d("plusplus",parent.parent.toString()) } inf1.minus_button.setOnClickListener { Log.d("minusminus",parent.toString()) } ticket_holder.addView(inf1) } getData("available",event) }

我如何根据JSON文件的内容动态添加TextView到我的布局?

我是新的android开发。 我有一个JSON文件,其中包含一些对象,如何添加一个新的TextView到我的ScrollView的每个对象在JSON文件? 每个TextView将存储包含在JSON对象中的数据。 我目前知道将视图添加到布局的唯一方法是通过在活动布局XML文件中定义它们,但是这不允许我自动生成它们,我必须手工创建它们并手动定义它们。 谢谢 编辑:链接的副本没有任何答案,但在这里提供了答案。

Bug – 无法更改supportActionBar标题

我试图从网络回调中调用的方法更改supportActionBar标题。 即使我从主线内部调用它,标题不会改变! 如果我尝试使用其他方法。 我的布局: <android.support.design.widget.AppBarLayout android:id="@+id/app_bar" android:layout_width="match_parent" android:layout_height="@dimen/app_bar_height" android:fitsSystemWindows="true" android:theme="@style/AppTheme.AppBarOverlay"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/toolbar_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" app:contentScrim="?attr/colorPrimary" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <ImageView android:id="@+id/userProfile" android:layout_width="match_parent" android:layout_height="match_parent" android:contentDescription="@string/str_act_main_user_list_item_user_profile_picture" /> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" app:layout_collapseMode="pin" app:popupTheme="@style/AppTheme.PopupOverlay" /> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> 主要活动: class ActivityMain : BaseActivity(), ContractMainView { @Inject lateinit var mPresenter: ContractMainPresenter private var mUser: User? = null override fun onCreate(savedInstanceState: Bundle?) { […]

在卡片视图中使回收者视图可点击

<android.support.v7.widget.CardView xmlns:card_view="http://schemas.android.com/apk/res-auto" android:id="@+id/home_subscribe_card" android:layout_width="match_parent" android:layout_height="72dp" android:onClick="@{vm.onGoalPress}" card_view:cardCornerRadius="4dp"> <android.support.v7.widget.RecyclerView android:id="@+id/feeds_list" android:layout_width="200dp" android:layout_height="30dp" android:layout_marginTop="6dp" /> </CardView> Click上的卡片视图正在工作,但回收者视图的区域不可点击。 如何使它成为可点击的,以便捕捉卡片视图的事件。

如何做新的PlayStore视差效果

有谁知道我怎样才能实现新的视差滚动效果 – 当你在PlayStore上打开一个应用程序并尝试向下滚动时,你可以看到效果,内容超越了顶部图像。 我怎样才能做到这一点?

将多个自定义LinearLayouts与按钮添加到ListView项目

我有一个相关的问题。 有人询问有关添加多个自定义LinearLayouts编程到ListView项目,这几乎是我需要做的。 在这个问题中,作者在LinearLayout中有TextViews。 我有一个按钮(和一些其他),当我点击这个按钮,我想膨胀一个新的LinearLayout下这个只需点击按钮。 如何获得当前的LinearLayout位置,所以我可以在它下面添加新的LinearLayout? 现在我在列表底部添加新的LinearLayout。