我试图将以编程方式创建的按钮组的背景渲染到具有橙色背景的主布局上。我可以调整表格行背景以匹配橙色,但我正在尝试使用单个变量更改,如果我需要在代码中稍后更改背景的颜色。
当我在应用程序中选择为用户创建新按钮的选项时,问题就开始了,并且这些按钮的支持表格行的背景呈现为白色背景,并且不显示其背后的橙色主背景。按钮呈现正常但操作系统似乎没有考虑xml文件中的背景颜色/透明命令或android颜色。我没有使用这两种,虽然我已经尝试过并且没有成功。我使用/或试图让背景符合透明度。我必须遗漏一些东西,因为来自源文件的唯一调用是将下面的布局覆盖到另一个作为应用程序主要布局的tablerow上。当用户选择某个任务时,它只是在布局中添加按钮。
<?xml version="1.0" encoding="utf-8"?>
<TableRow xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/newTagTableRow"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:color = "#00000000" <----Either this or below line
android:background="@android:color/transparent" <----Either this or above line
>
<Button
android:id="@+id/newTagButton"
android:layout_width="@dimen/tagButtonWidth"
android:layout_height="wrap_content" />
<Button
android:id="@+id/newEditButton"
android:layout_width="@dimen/editButtonWidth"
android:layout_height="wrap_content"
android:text="@string/edit" />
以下是关于上面粘贴的表格行的活动:
private void makeTagGUI(String tag, int index){
//get a reference to the LayoutInflator service
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
//inflate new_tag_view.xml to create new tag and edit Buttons
View newTagView = inflater.inflate(R.layout.new_tag_view, null);
//get newTagButton, set its text and register its listener
Button newTagButton = (Button) newTagView.findViewById(R.id.newTagButton);
newTagButton.setText(tag);
newTagButton.setOnClickListener(queryButtonListener);
//get newEditButton and register its listener
Button newEditButton = (Button) newTagView.findViewById(R.id.newEditButton);
newEditButton.setOnClickListener(editButtonListener);
//add new tag and edit buttons to queryTableLayout
queryTableLayout.addView(newTagView, index);
}// end method makeTagGUI
据我所知,inflator对象只是指向tablerrow xml,它遵循xml中概述的设置。