昨日PhoneGapを調べ始め、携帯電話を傾けながら転がるシンプルな「大理石」を作成しました。私は現在、Androidで開発していますが、携帯電話が回転したときに移動するのではなく、方向を美化として維持したいです。これを行う方法はありますか?
マニフェスト:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
package="com.phonegap.helloworld"
Android:versionCode="1"
Android:versionName="1.0" >
<supports-screens
Android:largeScreens="true"
Android:normalScreens="true"
Android:smallScreens="true"
Android:resizeable="true"
Android:anyDensity="true"
/>
<uses-permission Android:name="Android.permission.CAMERA" />
<uses-permission Android:name="Android.permission.VIBRATE" />
<uses-permission Android:name="Android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission Android:name="Android.permission.ACCESS_FINE_LOCATION" />
<uses-permission Android:name="Android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission Android:name="Android.permission.READ_PHONE_STATE" />
<uses-permission Android:name="Android.permission.INTERNET" />
<uses-permission Android:name="Android.permission.RECEIVE_SMS" />
<uses-permission Android:name="Android.permission.RECORD_AUDIO" />
<uses-permission Android:name="Android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission Android:name="Android.permission.READ_CONTACTS" />
<uses-permission Android:name="Android.permission.WRITE_CONTACTS" />
<uses-permission Android:name="Android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission Android:name="Android.permission.ACCESS_NETWORK_STATE" />
<uses-permission Android:name="Android.permission.GET_ACCOUNTS" />
<uses-permission Android:name="Android.permission.BROADCAST_STICKY" />
<uses-sdk Android:minSdkVersion="8" />
<application
Android:icon="@drawable/ic_launcher"
Android:label="@string/app_name" >
<activity
Android:name=".App"
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>
<activity
Android:name="com.phonegap.DroidGap"
Android:label="@string/app_name"
Android:screenOrientation="landscape"
Android:configChanges="orientation|keyboardHidden">
<intent-filter></intent-filter>
</activity>
</application>
</manifest>
コード:
package com.phonegap.helloworld;
import Android.os.Bundle;
import org.Apache.cordova.*;
public class App extends DroidGap {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.loadUrl("file:///Android_asset/www/index.html");
}
}
これを試しましたか?
Android:screenOrientation="portrait"
AndroidManifest.xml
ファイル、アクティビティを宣言した場所に、上記の行を追加するだけです。
例えば:
<activity
Android:name=".Activity.SplashScreenActivity"
Android:label="@string/app_name"
Android:screenOrientation="portrait">
<intent-filter>
<action
Android:name="Android.intent.action.MAIN" />
<category
Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
すべてのデバイスに対してこれを行う正しい方法は、config.xmlを構成することです
<preference name="orientation" value="portrait" />
<preference name="orientation" value="landscape" />
とても簡単です。AndroidManifest
。xmlファイルにAndroid:screenOrientation="landscape"
を追加する必要があります。
<application Android:icon="@drawable/icon" Android:label="@string/app_name">
<activity Android:name=".LogUploaderActivity" Android:label="Log Uploader" Android:screenOrientation="landscape" >
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
アクティビティでこれを試してください。 onCreate()
内およびsetContentViewの前。
// keeps the screen orientation in Landscape mode
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
私はそれを知らなかったので、言及することが重要かもしれません:
ハイドレーションが有効を使用してオンラインphonegap apkコンバーターを使用する場合、アプリを更新するのではなく、完全にrebuildする必要があります。これは、「向き」や「フルスクリーン」などの設定でも役立ちます。