我的应用程序使用了一个按钮,当单击该按钮时,它会转到一个新的活动,该活动显示一个列表视图。所有这些似乎都运行得很好。但是列表视图显示在与按钮相同的活动的顶部。它不会单独显示。所以我看到了背景中的主要活动和重叠的列表视图!这个问题能解决吗?我的代码如下:按钮CLick事件:
view.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(Assignments.this, ViewEntry.class);
startActivity(i);
}
});
以及列表视图代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
//setContentView(R.layout.database_view);
//ListView lv = (ListView)findViewById(R.id.listView1);
dbControl = new DatabaseControl(ViewEntry.this);
dbControl.open();
ArrayList<String> data = dbControl.getData();
if (data.equals(null)) {
Toast.makeText(ViewEntry.this, "Database Empty!", Toast.LENGTH_LONG)
.show();
} else {
final Dialog notice = new Dialog(this);
final TextView msgbox = new TextView(this);
//ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,data);
setListAdapter(new ArrayAdapter<String>(ViewEntry.this,
android.R.layout.simple_list_item_1, data));
final ListView listView = getListView();
//lv.setAdapter(arrayAdapter);
//lv.setTextFilterEnabled(true);
}
}
我的xml代码如下。但我不认为这有什么不同,因为我没有用过setContentView
。使用setContentView(R.layout.database_view);
会返回调试错误。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_horizontal"
android:background="#000000"
android:fadingEdge="vertical"
android:orientation="vertical" >
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true">
</ListView>
<TextView
android:id="@+id/textViewDatabase"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=""/>
提前感谢!
发布于 2013-04-01 14:42:19
将第二个活动布局的背景色更改为非透明。当您开始第二个活动时,第一个活动暂停并进入后台,但仍在那里,就像显示对话框时一样。
编辑:
Activity在默认情况下是不透明的,请检查您是否在styles.xml中正确定义了appTheme,并确保在样式或清单文件中的任何地方都没有使用Activity或"#00XXXXXX“颜色。
如果样式没有问题,那么我不知道为什么你的ListActivity仍然是透明的,但是你可以通过将下面的布局设置为contentView来改变这一点:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ad_catalog_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#888888" <!-- example non-transparent color -->
android:orientation="vertical" >
<ListView
android:id="@android:id/list" <!-- has to be @android:id/list for ListActivity -->
android:layout_width="match_parent"
android:layout_height="match_parent" >
</ListView>
</LinearLayout>
或通过设置ListView背景颜色:
getListView().setBackgroundColor(Color.rgb(xxx, xxx, xxx));
发布于 2013-04-02 11:13:28
不要使用透明背景色,而要尝试使用非透明色
试试下面的代码:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_horizontal"
android:background="#b3b3b3"
android:fadingEdge="vertical"
android:orientation="vertical" >
发布于 2013-04-01 15:13:55
使用意图转到其他活动,并在新活动中创建列表视图本身。使用按钮触发意图。
https://stackoverflow.com/questions/15745486
复制