【问题标题】:Android App working on Virtual Device but not on Mobile DeviceAndroid 应用程序在虚拟设备上工作但在移动设备上不工作
【发布时间】:2013-08-05 12:17:08
【问题描述】:

我正在开发一个简单的移动应用程序。问题在于横向。它在 Eclipse 上的虚拟设备上运行良好,并且在横向模式下显示所有按钮。但是当我在我的移动设备上以横向模式运行应用程序时,我仍然没有按原样显示所有按钮,最后一个按钮丢失了,但在虚拟设备上它工作正常并以表格形式显示所有按钮。下面是我的代码。请检查一下。

我的移动设备 Android 版本是 - 2.3.6

Manifest.XML 代码

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="org.example.sudoku1"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" 
        android:theme="@style/AppTheme" >
        <activity
            android:name="org.example.sudoku1.Sudoku"
            android:configChanges="orientation|keyboardHidden"

            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

res/layout/activity_sudoku.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:padding="30dip"
    android:orientation="horizontal" >
    <LinearLayout
    android:orientation="vertical"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_gravity="center">

    <TextView
        android:id="@+id/textView1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginBottom="25dip"
        android:text="@string/main_title" />

    <Button
        android:id="@+id/button1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/continue_label" />

    <Button
        android:id="@+id/button2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"

        android:layout_marginTop="21dp"
        android:text="@string/new_game_label" />

    <Button
        android:id="@+id/button3"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"

        android:layout_marginTop="20dp"
        android:text="@string/about_label" />

    <Button
        android:id="@+id/button4"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="29dp"
        android:text="@string/exit_label" />
</LinearLayout>
</LinearLayout>

(用于景观视图)res/layout-land/activity_sudoku.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:padding="15dip"
    android:orientation="horizontal" >
    <LinearLayout
        android:orientation="vertical"
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"
    android:layout_gravity="center"
    android:paddingLeft="20dip"
    android:paddingRight="20dip">
        <TextView
        android:text="@string/main_title"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:layout_gravity="center"
        android:layout_marginBottom="20dip"
        android:textSize="24.5sp" />
        <TableLayout 
            android:layout_height="wrap_content"
            android:layout_width="wrap_content"
            android:layout_gravity="center"
            android:stretchColumns="*">

        <TableRow>
        <Button
        android:id="@+id/button1"
        android:text="@string/continue_label" />
        <Button
        android:id="@+id/button2"
        android:text="@string/new_game_label" />
        </TableRow>

        <TableRow>
        <Button
        android:id="@+id/button3"
        android:text="@string/about_label" />
        <Button
        android:id="@+id/button4"
        android:text="@string/exit_label" />
        </TableRow>

        </TableLayout>
        </LinearLayout>
        </LinearLayout>

【问题讨论】:

  • 您在哪个模拟器上进行测试以及在哪个真实设备上进行测试?
  • 你应该检查你的模拟器和设备的分辨率。按钮丢失,因为没有足够的空间来显示它。尝试使用滚动视图或重新排列按钮以适应屏幕大小。
  • @Goofy 我正在使用 ANDROID “目标 = Andriod 4.2.2(API 级别 17),屏幕分辨率 240x320”。对于移动设备,我使用的是三星 Galaxy y GT-S6102

标签: android android-layout android-emulator landscape android-orientation


【解决方案1】:

在按钮标签中尝试android:layout_width="wrap_content"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-14
    • 1970-01-01
    • 2018-01-29
    • 2012-01-13
    • 2019-06-02
    • 2012-08-19
    • 2023-03-23
    • 1970-01-01
    相关资源
    最近更新 更多