问题是,listView无法在我的activity_main xml的设计选项卡中正确显示,但在正在运行的模拟器中正确显示。这很不方便,因为在设计选项卡中查看设计非常方便。
请告诉我如何解决这个问题。
emulator with design tab image
我的代码如下:`
1.Main_activity.java:
package com.example.lemonade.app1;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import com.example.lemonade.app1.R;
public class MainActivity extends Activity {
// Array of strings...
String[] mobileArray = {"Android","IPhone","WindowsMobile","Blackberry","WebOS","Ubuntu","Windows7","Max OS X"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ArrayAdapter adapter = new ArrayAdapter<String>(this, R.layout.activity_listview, mobileArray);
ListView listView = (ListView) findViewById(R.id.mobile_list);
listView.setAdapter(adapter);
}
}
main_activity.xml:
<LinearLayout 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:orientation="vertical"
tools:context=".ListActivity" >
<ListView
android:id="@+id/mobile_list"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</ListView>
</LinearLayout>
的strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">ListDisplay</string>
<string name="action_settings">Settings</string>
</resources>
activity_listview.xml
<?xml version="1.0" encoding="utf-8"?>
<!-- Single List Item Design -->
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/label"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dip"
android:textSize="16dip"
android:textStyle="bold" >
</TextView>
答案 0 :(得分:0)
我可以考虑你可能遇到的两个问题:
1)请检查你的应用程序模块中的min SDK和你试图运行应用程序的手机,也许最低SDK比你的手机更高。
2)你试图在你的列表中显示图像查看视图并且它们处理为“V21”,当您尝试将图像复制到可绘制的库中时,它会为您提供2个选项常规图像或V21由于某种原因v21 don在手机和模拟器上显示它们,对我来说至少是因为我遇到了同样的问题并且它解决了我。
如果其中一个没有帮助尝试调试它并告诉我你得到了什么结果。
答案 1 :(得分:0)
您指的是设计中显示的操作栏,而不是模拟器吗?听起来你的应用主题设置为包含一个操作栏,假设你正在使用它,你的设计预览会显示它。
我现在无法测试它,但我相信如果你没有通过覆盖onCreateOptionsMenu()来明确设置你的活动选项,你不会在运行你的时候显示操作栏应用
您可以在清单和/或styles.xml中查看应用主题,查找
"android:theme="@style/AppTheme"
在我的案例中指向styles.xml。
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
如果您将父级更改为没有操作栏的东西,例如Theme.AppCompat.NoActionBar,它将不会显示在您的设计窗口中。