Articles of android layout

Android小部件位图大小

你好, 我正在编写一个小部件,但我不确定使用什么尺寸的位图作为每个屏幕分辨率/密度的背景。 根据Android Developer App Widgets教程: To find your minimum width and height in density-independent pixels (dp), use this formula: (number of cells * 74) – 2 Following this formula, you should use 72 dp for a height of one cell, 294 dp and for a width of four cells 因此,如果我的小部件是72dp x 294dp,我的ldpi,mdpi和hdpi drawables需要多大的位图? 另外,我的清单中是否需要任何特定的支持屏幕设置? […]

改进大型ListView适配器平滑滚动,有时生涩

我试图看看滚动时有时候我的listview jerk是什么,有时它很糟糕,特别是当应用程序首次启动时。 除非有一些我不知道的事情(极有可能),否则我所有的条件都是必要的。 我没有在单独的线程上运行某些任务,因为它们依赖于我从后端接收的数据(我正在对两者进行编码,因此也欢迎后端建议)。 产品处于测试阶段,但确实需要让它稍微平滑一些。 我正在压缩图像,它们有点长,但这不是问题,因为当我从设备上传图像时,我还包括图像的宽度和高度,并将其发送到后端。 加载列表时会返回这些尺寸。 我想知道的一件事是,计算/转换特定设备屏幕的尺寸是否会导致轻微的延迟。 不确定该任务的资源密集程度如何,但没有它(不知道尺寸,每行将开始平坦,然后扩展到实际图片大小,这将导致列表跳转,所以我不能运行该计算背景要么。) 基本上滚动也不错,但我需要以某种方式改进它。 这是我的适配器: public class VListAdapter extends BaseAdapter { ViewHolder viewHolder; private boolean isItFromProfile; /** * fields For number formating, ex. 1000 * would return 1k in the format method */ private static final NavigableMap suffixes = new TreeMap(); static { suffixes.put(1_000L, “k”); suffixes.put(1_000_000L, “M”); suffixes.put(1_000_000_000L, “G”); […]

谷歌Chrome安卓应用的源代码?

我想构建一个与Google Chrome的Android版本有相似之处的用户界面。 我如何自己构建谷歌浏览器的Android版本?

ActionBarSherlock上的activatedBackgroundIndicator的自定义背景不起作用

我正在使用ActionBarSherlock ,我正在尝试为行背景自定义activatedBackgroundIndicator属性。 如果我使用最新的android sdk,没有ActionBarSherlock ,我可以自定义背景,在res / values / style.xml上创建以下样式,并在AndroidManifest.xml上将其定义为android:theme =“@ style / Theme。自定义“ : @drawable/activated_background 然后,我的res / drawable / activated_background.xml包含下一个代码: 最后,用于定义ListView中每一行的代码是: 结果显示在屏幕截图中。 是一个简单的应用程序,当单击列表项时,只有ListView与ListView.CHOICE_MODE_SINGLE和getListView()。setItemChecked(position,true) 。 标准选定行的蓝色现在为黄色,效果很好。 当我想使用ActionBarSherlock应用相同的自定义时,会出现此问题。 现在样式文件是下一个,背景显示为蓝色而不是自定义黄色。 @drawable/activated_background @drawable/activated_background ?android:attr/activatedBackgroundIndicator 我不知道ActionBarSherlock是否支持android:activatedBackgroundIndicatorfunction,或者我忘了实现需要能够更改默认颜色的东西。 有任何想法吗?

如何在android中查看listview中的项目?

是否可以根据其在适配器中的位置而不是在ListView中的可见视图中获取项目视图? 我知道像getChildAt()和getItemIdAtPosition()这样的函数,但是它们根据ListView中的可见视图提供信息。 我也知道Android回收了视图,这意味着我只能使用ListView中的可见视图。 我的目标是为每个项目设置一个通用标识符,因为我使用的是CursorAdapter,因此我不必计算项目相对于可见项目的位置。

ic_sync_black_24dp.xml的android.content.res.Resources $ NotFoundException

我已经挣扎了一个多星期,因为我认为它必须与我的环境有关,但我无法缩小范围。 我启动一个空项目,添加一个“空白”活动并接受所有默认值。 项目完成设置后,我添加了“设置”活动。 在MainActivity.java中,我添加了两行代码来连接这两个活动,然后构建项目。 public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); //noinspection SimplifiableIfStatement if (id == R.id.action_settings) { Intent intent = new Intent(this, […]

如何更改EditText指针颜色(不是光标)

我正在尝试使EditText的指针颜色变为蓝色。 我能够使下划线和光标变为蓝色,但是液滴外观指针仍然是灰色的。 我谷歌了一下,但所有出现的链接只谈到如何更改光标,而不是指针。 所以,如果有人知道如何做到这一点,我需要你的帮助。 我只需要支持Android 5.0及更高版本。 因此,如果您的解决方案仅适用于API> 21,那就完全没问题了。 谢谢!

为EditText使用setCompoundDrawables时计算图像大小

当我添加如下图标时: etComment = (EditText) findViewById(R.id.et_comment); Drawable img = getResources().getDrawable( R.drawable.warning ); etComment.setCompoundDrawablesWithIntrinsicBounds( img, null, null, null ); 图标调整EditText的大小。 如何在不调整EditText大小的情况下计算img大小并将其放入EditText? 谢谢! FunkTheMonk 使用setCompounDrawables()而不是setCompoundDrawablesWithIntrinsicBounds() – 您必须手动设置drawable的边界。 我不明白如何手动计算Bounds。 我有EditText的高度和宽度: etComment = (EditText) findViewById(R.id.et_comment); Drawable img = getResources().getDrawable( R.drawable.warning ); int size = etComment.getHeight(); img.setBounds(0, 0, size, size); etComment.setCompoundDrawables( img, null, null, null ); 但我在不同的屏幕尺寸上有不同的结果。 我如何计算图标的正确尺寸和填充? 你可以帮我吗?

更改navigationView的单个特定菜单项的背景颜色

我想在导航抽屉里的android菜单中设置所有标题项的背景颜色。 我的布局看起来像: // Here i want to set the background // Here no background 结果应该有点像: 我发现我可以使用以下内容设置文本颜色: MenuItem menuItem = navigationView.getMenu().findItem(R.id.menu_item); SpannableString s = new SpannableString(menuItem.getTitle()); s.setSpan(new TextAppearanceSpan(this, R.style.TextAppearance), 0, s.length(), 0); if (menuItem.getItemId()==R.id.nav_targets){ menuItem.setTitle(s); } 但是我如何设置填充背景颜色?

如何计算设备像素比

我想知道如何计算-webkit-device-pixel-ratio 。我已经读过这个: http : //www.quirksmode.org/blog/archives/2012/06/devicepixelrati.html。但是我无法清楚地理解它。 我还想知道是否有一个列表,哪些设备使用哪个像素比。安卓网站说 Android浏览器和WebView支持CSS媒体function,允许您为特定屏幕密度创建样式 – -webkit-device-pixel-ratio CSS媒体function。 应用于此function的值应为“0.75”,“1”或“1.5”,以指示样式分别适用于具有低密度,中密度或高密度屏幕的设备。 但我发现我们需要使用-webkit-device-pixel-ratio = 2来使网络应用程序在768 x 1280分辨率屏幕上兼容。