Articles of android layout

动态创建按钮并设置onClickListener

我在Android上处理动态创建的按钮时遇到问题。 我正在创建N个按钮,单击按钮时我必须执行相同的方法,但我必须知道单击了哪个按钮。 for (int i = 0; i < NO_BUTTONS; i++){ Button btn = new Button(this); btn.setId(2000+i); … btn.setOnClickListener((OnClickListener) this); buttonList.addView(btn); list.add(btn); 目前我正在为每个按钮添加ID,我正在使用下面的方法查看单击了哪个按钮。 (line btn.setId(2000+i);和btn.setOnClickListener((OnClickListener) this); )。 此方法也在活动中实现。 @Override public void onClick(View v) { switch (v.getId()){ case 2000: selectButton(0); break; … case 2007: selectButton(7); break; } } 这对我来说不太好看,所以我想问有没有更好的方法呢? 或者如何向onclick事件发送一些信息? 有什么建议么?

Android ScrollView拒绝滚动到底部

我有一个root scrollview元素,其中包含一个relativelayout,以及相对布局中的一堆表单元素。 出于某种原因,当软键盘启动时,它似乎无法一直滚动到底部,这将我的一个按钮切成两半。 以下是层次结构查看器的屏幕截图,用于演示我的意思。 如您所见,系统知道视图继续通过键盘,但滚动视图(正确填充屏幕的可见部分)将不会继续向下滚动。 我在活动清单中有android:windowSoftInputMode=”adjustResize” ,我可以/不会将其切换为pan。 任何帮助表示赞赏。 编辑:我在多个视图中看到这个。 这是另一个具有相同问题的视图的xml:

以编程方式更改线性布局上边距android

我在一个帧布局中有两个线性布局。 在这里,我正在设置线性布局的top margin ,其中id layoutbtnlinear_aboutme为10dp,但在代码中我想在某些条件下将此10dp更改为50dp,如何以编程方式更改此上边距?

如何更改工具栏导航和溢出菜单图标(appcompat v7)?

我在使用v7工具栏时遇到了困难。 曾经是ActionBar一项简单任务,现在看起来过于复杂。 无论我设置什么样的风格,我都无法更改导航图标(打开抽屉)或溢出菜单图标(打开菜单)。 所以我有一个Toolbar 我编码看起来像这样 //before in the code I do mToolbar = (Toolbar) findViewById(R.id.toolbar); private void initToolbar() { setSupportActionBar(mToolbar); getSupportActionBar().setDisplayShowTitleEnabled(false); getSupportActionBar().setDisplayHomeAsUpEnabled(true); getSupportActionBar().setHomeButtonEnabled(true); } 现在,我需要为这两个图标更改Drawable 。 我如何为compat v7 Toolbar执行此操作? 我想在抽屉打开时我需要更改箭头(Android 5.0)。

Cardview没有在底部显示阴影

我有以下xml的cardview: 这导致这些阴影底部没有阴影 但我试图得到像这样的阴影,更好地围绕整个卡。 我已经尝试改变高程无济于事,在这个问题上进行搜索似乎只会带来一些没有任何阴影的人,这不是我的情况。 我怎样才能让阴影正确? 谢谢。

TextWatcher事件被多次触发

我对TextWatcher有一个恼人的问题。 我一直在网上搜索,但找不到任何东西。 感谢有人可以帮助我。 由于某种原因, 在一次文本更改时对TextWatcher事件的调用是不稳定的。 有时它们会被触发一次(就像它们应该的那样),有时是两次,有时是3次。 不知道为什么,整件事情非常直截了当。 有时候,afterTextChanged()上的Editable参数会返回toString()和length()中的空值。 代码如下: private TextWatcher mSearchAddressTextChangeListener = new TextWatcher() { @Override public void onTextChanged(CharSequence s, int start, int before, int count) { } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void afterTextChanged(Editable searchedAddress) { System.out.println(“called multiple times.”); } }; 在afterTextChanged() (和AsyncTask […]

为警报对话框设置Android Theme.Light

我正在尝试为我的警报对话框设置android Theme.Light主题,但到目前为止没有成功。 在阅读了一些教程后,我使用AlertDialog.Builder收集了这些教程,我们无法直接在构造函数中设置主题(至少在API级别7中)。 我find的替代解决方案是使用ContextThemeWrapper ,每个人都保证会解决我的问题。 所以我编写了这样的代码: AlertDialog.Builder builder = new AlertDialog.Builder( new ContextThemeWrapper(context, R.style.popup_theme)); 我在values文件夹中描述了我的主题: #ffffffff @color/back_color @color/back_color 不幸的是,我仍然得到默认的Theme.Dialog.Alert主题。 谁能告诉我为什么? 我哪里错了? 编辑 :如果您不知道我的问题的答案,请投票。 我有一个坏习惯,发布被卡住的问题:(

Android – 围绕ImageView设置边框

我有一个固定宽度和高度的单元格,让它为100x100px。 在那个单元格中,我想要显示一个带边框的ImageView 。 我的第一个想法是将一个后台资源放到ImageView ,并添加一个1dp的填充来创建边框效果: 显然这应该有效,但它没有,或者至少不如预期的那样。 问题是ImageView背景填充整个100x100px单元格的空间,因此,如果图像的宽度小于100px,则顶部和底部边框将显得更大。 注意黄色边框,我需要它在ImageView周围正好1px: 任何帮助,想法,任何建议都非常感谢。

Android如何设置百分比填充/边距,以便EditText在任何一方都有10%的保证金?

android支持%或有没有办法近似。 我有两个非常不同的屏幕尺寸,但我百分比方面我希望活动中的EditBox具有相同的屏幕尺寸和屏幕尺寸比例的余量。 如何才能做到这一点。

Android windowSoftInputMode =“adjustPan”滚动一些

请考虑以下示例: 并在清单文件中: android:windowSoftInputMode=”adjustPan” onfocus edittext,软键盘覆盖一个按钮,如下所示: 但我喜欢这样: 如何滚动视图以使按钮可见?