Tag: android layout

如何以编程方式更改应用程序:高程

我的应用程序是API 19.所以我不能使用android:海拔。 所以我的应用程序:我的布局提升。 Android XML:android:海拔与应用程序:海拔 举个例子 : 如何以编程方式更改应用程序:高程? 我可以更改android:海拔,但我找不到如何更改应用程序:海拔!

将FlexBox子元素添加到FlexBox后,如何更改其宽度

我们有一个按钮和一个视图(将按钮与其他视图分开的一行)的线性布局。 我们将linearLayout以编程方式添加到flexBox元素,并将Flex上的FlexGrow设置为1f。 问题是,我不能让内部按钮匹配父线性布局的宽度,同时设置最小宽度。 当我将按钮的宽度(xml)设置为match_parent时,父元素的大小只有按钮中的文本的大小(在文本更改的情况下,它的大小要大20%左右)。 在这个例子中,setMinnimumWidth()似乎没有任何影响。 但是,当我将按钮宽度(在xml中)设置为WrapContent然后setMinimumWidth()确实工作。 该按钮显示为正确的大小,但父元素比按钮大得多(大概是为了填充flexBox行中的剩余空间。 我怎样才能让按钮和它的父母是同样的大小,同时也能够设置最小宽度? xml为我们添加的flexbox元素, 添加元素并设置宽度的代码 val button = linearLayout.findViewById(R.id.button_id) as Button button.width = width button.minimumWidth = width flexBox.addView(linearLayout) val layoutParams = linearLayout.layoutParams layoutParams.width = width linearLayout.layoutParams = layoutParams linearLayout.invalidate() linearLayout.requestLayout() 代码在kotlin。

从复合控件的xml布局文件中访问一个自定义属性(即没有Java / Kotlin代码)

我有一个复合视图与两个自定义属性。 我使用这样的控制: attrs.xml文件: 最后是复合控制。 注意行: android:textColor=”?attr/numberTint” 是我不知道的。 我知道我可以吸取MyView.java类中的属性,并手动设置TextViews的textColor,但是这种感觉很脏。 我觉得我错过了一些简单的东西。 我也知道,我可以做到这一点与风格,但这也不觉得正确。 如何在复合视图中直接使用属性而不用在代码中解析它们?

数据列表没有显示在Android应用程序的主要活动的回收站视图中,使用kotlin进行开发。

activity_main.xml代码: RecyclerView在主要activity,list_row.xml代码中的数据列表: 主要活动代码在这里: class MainActivity : AppCompatActivity() { private var adapter : PersonListAdapter? = null private var layoutManager : RecyclerView.LayoutManager? = null private var personList : ArrayList? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) personList = ArrayList() layoutManager = LinearLayoutManager(this) adapter = PersonListAdapter(personList!!, this) //set up recycle view RecViewId.layoutManager = layoutManager RecViewId.adapter = […]

Basic ConstraintLayout(工具栏,片段容器和底部导航)

我正在适应Android的Kotlin和ConstraintLayouts。 我试图有一个简单的布局,有一个工具栏和底部的导航视图。 这是我目前的XML: 不幸的是,我误解了一些东西,似乎无法获得片段容器来填充工具栏和底部导航之间的空间。 有人能把我引向正确的方向吗?

Kotlin的视图绑定扩展在65k方法限制之后停止工作

达到65k方法限制后,Kotlin的视图绑定扩展停止工作,并在引用视图时抛出NullPointerException。 我试图安装MultiDex,但没有解决问题。 我正在使用Android API 25,不使用ProGuard并编译调试风格。 我能做什么? 这是一个错误的例子 E/AndroidRuntime: FATAL EXCEPTION: main Process: com.jj.pos, PID: 5906 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.jj.pos/com.jj.pos.features.authentication.LoginActivity}: java.lang.NullPointerException: Attempt to invoke virtual method ‘void android.widget.TextView.setText(java.lang.CharSequence)’ on a null object reference at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2665) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726) at android.app.ActivityThread.-wrap12(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6119) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776) […]

如何使用Anko设置FloatingActionButton边框宽度

我刚刚从Java切换到Kotlin,并使用Anko来构建布局 。 这是我的布局: relativeLayout { floatingActionButton { imageSource = R.drawable.kotlin_is_amazing }.lparams { width = wrapContent height = wrapContent } } 现在的问题是如何设置app:borderWidth与Anko app:borderWidth ?

从一个字符串获取Android的ID资源

在我的Kotlin应用程序中,我有一些ImageViews (在activity_main.xml ): imageView_0 , imageView_1 , imageView_2和imageView_3 。 我如何从0到3循环访问视图? 这不会起作用: val imageView: ImageView = findViewById(“R.id.imageView_” + index) as ImageView

是否有可能重新使用Kotlin Anko的布局

我读到使用Anko的最大好处是它的可重用性。 但我无法find确切的例子。 目前在新的Android布局系统中,锅炉板如下: DrawerLayout (with some setup) CoordinatorLayout (with some setup) AppBarLayout (with some setup) ToolBar NavigationView (with header inflated) 从上面的布局结构来看,只有是varry。 在很多情况下,这些仪式设置几乎在每个活动中都重复着。 所以在这里与安科即时思考如果有一个可重用的解决方案关于这个问题。 我不期望它可以重复使用的通用布局,但至少我可以尽量减少项目中的仪式代码。 也许我需要像这样的东西: class MainUI: AnkoComponent { override fun createView(ui: AnkoContext): View{ return with(ui) { myCustomRootLayout { //here is what will be } } } } 从上面的代码,我期待myCustomRootLayout将做所有的根布局,如(DrawerLayout,CoordinatorLayout等)的仪式设置。 那可能吗? 编辑所以我想我的问题是: 如何使一个自定义组件可以承载其他组件

在Kotlin中动态更改textView值

我有时间接近传感器更改为 override fun onSensorChanged(event: SensorEvent) { val distance = event.values[0] val max = event.sensor.maximumRange a = System.currentTimeMillis() if (distance < Math.min(max, 8.toFloat())) { listener.onNear() } else { listener.onFar() } b = System.currentTimeMillis() System.out.println("That took " + (b- a) + " milliseconds") } 它出现在我的ProximityDetector.kt文件中 并使用我的应用程序显示它 timeTaken.setText(“That took ” + (b – a) + ” milliseconds”) 这是在我的SettingsActivity.kt文件 […]