Questions tagged «android-widget»

要么与主屏幕小部件有关,要么与Android应用程序屏幕上使用的常规UI元素有关。



11
在Android屏幕上更改对话框的位置
我AlertDialog在Activity中做了一个简单的说明: View view = layoutInflater.inflate(R.layout.my_dialog, null); AlertDialog infoDialog = new AlertDialog.Builder(MyActivity.this) .setView(view) .create(); infoDialog.show(); 使用以上代码,对话框将显示在屏幕中心(大约)。 我想知道,如何自定义对话框位置以使其显示在顶部操作栏下方?(是否有改变重力或对话框的内容?)以及如何根据我的代码进行操作?


15
gen已经存在,但不是源文件夹
我正在开发我的Android项目,删除未使用的库后,出现错误: myproject/gen already exists but is not a source folder. Convert to a source folder or rename it 在我的活动代码中,R.java无法解析所有资源。 我尝试过,右键单击“源”选项卡下的项目=> Java构建路径=>,将gen /添加为源。但这对解决问题没有帮助... 为什么,如何摆脱这个问题? ----更新---- 我发现,日食还抱怨“项目没有project.properties文件!编辑项目属性以设置一个。” ,但是我的项目下确实有project.properties文件。为什么会抱怨?我已经清理了项目并“修复了项目属性”,但没有帮助。


7
Android:克隆可绘制对象以使StateListDrawable具有过滤器
我试图做一个通用的框架功能,使任何Drawable在按下/集中/选中/等时都突出显示。 我的函数接受一个Drawable并返回一个StateListDrawable,其中默认状态是Drawable本身,并且的状态android.R.attr.state_pressed是相同的drawable,只是使用过滤器setColorFilter。 我的问题是我无法克隆drawable并使用应用的过滤器为其创建单独的实例。这是我要实现的目标: StateListDrawable makeHighlightable(Drawable drawable) { StateListDrawable res = new StateListDrawable(); Drawable clone = drawable.clone(); // how do I do this?? clone.setColorFilter(0xFFFF0000, PorterDuff.Mode.MULTIPLY); res.addState(new int[] {android.R.attr.state_pressed}, clone); res.addState(new int[] { }, drawable); return res; } 如果我不克隆,则过滤器显然适用于两种状态。我尝试一起玩,mutate()但没有帮助。 有任何想法吗? 更新: 接受的答案确实克隆了一个可绘制对象。但这并没有帮助我,因为我的常规功能在另一个问题上失败了。似乎将可绘制对象添加到StateList时,它会丢失所有过滤器。

8
如何使用列表中的按钮在Listactivity中触发onListItemClick?
我有一个简单的ListActivity,它使用自定义ListAdapter生成列表中的视图。通常,ListAdapter只会用TextViews填充视图,但是现在我也想在其中放置一个按钮。 根据我的理解和经验,当单击列表项时,将可聚焦视图放在列表项中会阻止在ListActivity中触发onListItemClick()。该按钮在列表项中仍然正常运行,但是当按下按钮以外的内容时,我希望触发onListItemClick。 我该如何工作?


3
在我的情况下,如何以编程方式在另一个布局之上显示一个布局?
我的主布局main.xml仅包含两个LinearLayouts: 第1LinearLayout主机一VideoView和Button, 第二个LinearLayout托管一个EditText,并且LinearLayout已将可见性值设置为“ GONE ”(android:visibility="gone") 如下所示: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="fill_parent" android:layout_width="fill_parent" android:orientation="vertical" > <LinearLayout android:id="@+id/first_ll" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <VideoView android:id="@+id/my_video" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="9" /> <Button android:id="@+id/my_btn" android:layout_width="30dip" android:layout_height="30dip" android:layout_gravity="right|bottom" android:layout_weight="1" /> </LinearLayout> <LinearLayout android:id="@+id/second_ll" android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingTop="2dip" android:visibility="gone" > <EditText android:id="@+id/edit_text_field" android:layout_height="40dip" android:layout_width="fill_parent" android:layout_weight="5" android:layout_gravity="center_vertical" /> </LinearLayout> </LinearLayout> 我成功实现了以下功能:Button按下(ID为my_btn时),将显示第二个 LinearLayoutwithEditText字段,并带有以下Java代码: …

3
Android XML Layout的'include'标签确实有效吗?
在我的Android布局文件中使用<include>时,我无法覆盖属性。当我搜索错误时,发现拒绝的问题2863: “ include标记已损坏(覆盖的布局参数永远无效)” 由于Romain指出这在测试套件及其示例中有效,因此我一定做错了。 我的项目是这样组织的: res/layout buttons.xml res/layout-land receipt.xml res/layout-port receipt.xml button.xml包含以下内容: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal"> <Button .../> <Button .../> </LinearLayout> 人像和风景的receive.xml文件看起来像: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> ... <!-- Overridden attributes never work. Nor do attributes like the red background, which is specified here. --> <include android:id="@+id/buttons_override" android:background="#ff0000" android:layout_width="fill_parent" …


9
Android-从HashMap获得价值
我试图在Android中的HashMap上进行搜索,但是出现问题: 考虑以下示例: HashMap<String, String> meMap=new HashMap<String, String>(); meMap.put("Color1","Red"); meMap.put("Color2","Blue"); meMap.put("Color3","Green"); meMap.put("Color4","White"); 现在,我想对其进行迭代并获取每种颜色的值,并希望在“ Toast”中显示。如何显示?

10
如何控制Android中默认警报对话框的宽度和高度?
AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("Title"); builder.setItems(items, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int item) { Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show(); } }); AlertDialog alert = builder.create(); 我正在使用上面的代码来显示警报对话框。默认情况下,它以宽度填充屏幕,以wrapped_content填充高度。 如何控制默认警报对话框的宽度和高度? 我试过了: alert.getWindow().setLayout(100,100); // It didn't work. 如何在警报窗口上获取布局参数并手动设置宽度和高度?

3
Android锁屏小部件
一些用户一直在问我我的应用程序的Android锁定屏幕小部件-我相信他们想要一个保留在锁定屏幕上并允许他们与该应用程序交互的小部件。 我至今尚未找到任何官方文档-我发现的唯一一件事就是将主屏幕小部件放置在锁定屏幕上的应用程序。 关于我在哪里了解有关构建真正的锁屏小部件的更多信息?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.