Articles of android layout

什么是“上下文菜单”和方法registerForContextMenu()

在Activity类中,有一个名为registerForContextMenu(View view) 。 android文档解释了此方法用于注册要为给定视图显示的上下文菜单(多个视图可以显示上下文菜单)。 “ 上下文菜单 ”是什么意思? 这是指物理菜单按钮还是什么? 我还需要关于方法registerForContextMenu(View view)一些解释,我不清楚只是在线阅读文档。

最佳方式:在ScrollView中保存和恢复TextView位置

我想要的是,在设备更改方向时,屏幕中的顶线在纵向时仍然是横向屏幕上的顶行。 反之亦然。 由于纵向和横向之间的屏幕宽度可能不同,因此文本的线宽(也就是TextView和ScrollView的宽度)也会有所不同。 因此,在不同的屏幕配置(纵向与横向,大与小)中,换行将有所不同。 在不同的情况下,换行符将处于不同的位置。 有三种不太完美的解决方案供您参考。 还解释了它们的缺点。 首先,最基本的方法: (1)仅将y偏移存储在像素中 请查看: http : //eliasbland.wordpress.com/2011/07/28/how-to-save-the-position-of-a-scrollview-when-the-orientation-changes-in-android/ 为什么这不是那么完美: 在肖像中,线条被包裹。 Line_1_Word_A Line_1_Word_B Line_1_Word_C Line_1_Word_D Line_2_Word_A Line_2_Word_B Line_2_Word_C Line_2_Word_D Line_3_Word_A Line_3_Word_B Line_3_Word_C Line_3_Word_D 在横向,线条没有包裹。 Line_1_Word_A Line_1_Word_B Line_1_Word_C Line_1_Word_D Line_2_Word_A Line_2_Word_B Line_2_Word_C Line_2_Word_D Line_3_Word_A Line_3_Word_B Line_3_Word_C Line_3_Word_D 想象一下,在保存时在Portrait中读取Line_2_Word_A (在屏幕顶部)。 当更改为横向时,它将显示Line_3_Word_A (在屏幕顶部)。 (因为顶部有两行偏移的像素。) 然后我想出一个方法, (2)通过保存滚动百分比 @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); final […]

iOS有类似Android的RecyclerView吗?

我有一个RecyclerView (带有GridLayoutManager ),它有4种不同的视图types。 在手机纵向布局中,每种视图types应每行显示1个项目。 但是,如果设备宽度足够大(即平板电脑),则一种视图types(卡)可以每行显示两张卡。 iOS是否有类似于RecyclerView布局API以允许这种灵活的东西? 如果是这样 – 它是什么? 示例(平板电脑与手机中的更多列)

如何为Android Honeycomb应用程序创建每周日历视图?

我正在开发一个Android(v3.0)应用程序,该应用程序需要模仿Google日历上的每周日历布局: 这些活动将基于通过Google Calendar API提出的外部请求(我已经开始使用此部分)。 使用API​​,我可以获得一周的事件列表,每个事件都有一个开始和结束日期时间。 我想使用此数据在类似于上面的视图中向应用程序的用户显示预定事件。 这是我到目前为止所拥有的: XML出现在下面: ” 我的方法是使40dp等于1小时的时间。 因此,每当我想添加持续时间为1.5小时的事件时,我将制作一个60dp的按钮,我将放置在时间开始的确切位置(从上到下12点= 0dp,从顶部下午1点= 40dp) ,2pm = 80d从顶部等)。 我的问题是: 有更好的方法吗? 如何将我的XML转换为可以添加到任何Android项目的独立视图? (我打算制作关于最终产品的博客文章) 谢谢!

Android,如何正确制作透明状态栏

我正在尝试在Android 4.4+上创建透明状态栏我知道如何通过定义我自己的样式使其透明: true true 我在这里find: https : //stackoverflow.com/a/20573595/2633630 问题是当状态栏是透明的时,它与操作栏的颜色不匹配,并且可以看到后台的活动: 所以我发现我可以在我的布局中使用android:fitsSystemWindows =“true”和android:clipToPadding =“false” http://mindofaandroiddev.wordpress.com/2013/12/28/making-the-status -bar-和导航条透明上带有一个-列表视图-ON-机器人-4-4-奇巧/ …. 这解决了透明状态栏的顶级问题,看起来还不错。不幸的是,“导航栏”底部有系统按钮的问题,这是红色的,不是我想要的透明: 我正在尝试所有可能的变体来实现工作结果,但我无法弄清楚如何解决它。 我唯一可行的解​​决方案是将根元素的顶部填充大约60dp。 但是这个解决方案很难看,并且在不同的设备上可能看起来不同,可能无法正常工作。 我发现Google Play上的一些应用程序在透明背景下工作正常,所以我很好奇他们是如何使它工作的。 例如: https : //play.google.com/store/apps/details?id = com.trello和其他一些人

CoordinatorLayout与RecyclerView和底部固定的EditText

我正在开发一个聊天屏幕。 它包括用于用户个人资料图像的CollapsingToolbarLayout,用于消息列表的RecyclerView和用于发送消息的编辑框。 我无法弄清楚是否可以将编辑框固定到底部屏幕并防止它与屏幕的其余部分滚动? 如果我在一个垂直的LinearLayout中包装CoordinatorLayout并将EditText放在CoordinatorLayout之外,我几乎达到了我想要的效果。 但是,在这种情况下,键盘行为与RecyclerView分离 – 当您打开键盘时,它不会向上/向下滚动。 如果我尝试将EditText放在CoordinatorLayout中,它会滚出屏幕,我不知道是否需要为它设置任何特殊的行为 我的布局

如何动态地将视图添加到已在xml布局中声明的RelativeLayout?

我在xml布局文件中声明了RelativeLayout 。 现在我想将代码中的Views添加到现有布局中。 我通过代码动态地向现有布局添加了一个Button : rLayout = (RelativeLayout)findViewById(R.id.rlayout); LayoutParams lprams = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); Button tv1 = new Button(this); tv1.setText(“Hello”); tv1.setLayoutParams(lprams); tv1.setId(1); rLayout.addView(tv1); 现在我需要在已添加的Button的右侧添加另一个Button 。 我无法find我可以在之前添加的按钮右侧添加新的方式。

如何在Android中创建一个整齐的两列输入表单?

我想创建一个整齐的两列输入表单,如下所示: 到目前为止我的xml布局代码: 您可以看到我使用LinearLayout利用layout_weight&layout_width =“0dp”技巧使两列分区看起来整洁。 在HTML代码中,我们可以使用%width size。 但是在android xml布局中,layout_width没有%-value。 我想避免列宽的硬编码dp值。 在android中有可能吗? 到目前为止,这是我能做的最好的事情。 现在我想调整ISBN文本框的大小以使其变小(比当前大小减少50%)。 但是我无法调整文本框的宽度,因为layout_width必须为“0dp”才能使layout_weight工作。 我还想对提交和取消按钮大小做同样的事情。 我想知道使用LinearLayout是否是在android中整齐地创建输入表单的正确方法。 TableLayout可以更好吗? 我听说你无法在TableLayout中更改子视图的layout_width。 这里有一些人推荐我使用RelativeLayout,我试过但它不支持layout_weight。

为什么android会在使用小于12sp的大小时发出警告?

好吧,我正在为7英寸平板电脑开发应用程序,更专门用于nexus 7,在XML布局文件中,我收到警告 避免使用小于12sp的尺寸:11sp 如果我将任何textField的大小设置为小于12sp? 我正在添加屏幕截图以更清晰地解决问题

差异FragmentPagerAdapter和PagerAdapter

我阅读了android pageadapter和fragmentpageadapter的文档,但我没有看到任何区别。 我的意思是一个是片段,一个不是,但是……就是这样吗? 我对片段没有太多经验,所以也许这就是为什么我没有注意到任何差异。 那么,如果我使用FragmentPagerAdapter或PagerAdapter,那么差异是什么?