2016-11-03 10 views
1

こんにちは、nativescriptでデバイスの向きを設定する方法を知りたいと思います。 具体的には、私が書いているアプリケーションを常に同じ向き(ポートレート)にして、デバイスを回転させても風景にならないようにしたいとします。nativescriptで方向を設定する方法

私はnativescript-orientationプラグインとsetOrientationを試しました。リストをプラグイン

私は未定義のプロパティsetOrientationを読み取ることができません」のエラーが表示されますただし
var orientation = require('nativescript-orientation'); 
console.log(JSON.stringify(orientation));// outputs JS: {} 
orientation.setOrientation("portrait"); 

。 TNSは。また、私はplatforms/androidディレクトリを削除し、同じ結果とtns platform add androidを実行しようとしたプラグインがインストールされていることを示している。

また、私は成功せずのAndroidManifest.xmlにandroid:screenOrientation="portrait"の様々な組み合わせを入れてみました。

App_resources内側からのAndroidManifest.xmlこの

のように見えます
<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="__PACKAGE__" 
    android:versionCode="1" 
    android:versionName="1.0"> 

    <supports-screens 
     android:smallScreens="true" 
     android:normalScreens="true" 
     android:largeScreens="true" 
     android:xlargeScreens="true"/> 

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

    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
    <uses-permission android:name="android.permission.INTERNET"/> 

    <application 
     android:screenOrientation="portrait" 
     android:name="com.tns.NativeScriptApplication" 
     android:allowBackup="true" 
     android:icon="@drawable/icon" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme"> 

     <activity 
      android:name="com.tns.NativeScriptActivity" 
      android:label="@string/title_activity_kimera" 
      android:configChanges="keyboardHidden|orientation|screenSize" 
      android:theme="@style/LaunchScreenTheme"> 
      <meta-data android:name="SET_THEME_ON_LAUNCH" android:resource="@style/AppTheme" /> 

      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity android:name="com.tns.ErrorReportActivity"/> 
    </application> 
</manifest> 
+0

の完全な 'build'を実行しましたか?また、デバイス/エミュレータ上にある現在の.apkをアンインストールし、新しいビルドを '実行する'または 'livesync'する必要があります。マニフェストオプションは、私が知っているものからアンドロイドアプリに1つのオリエンテーションを強制する良い方法です。だから動作しますが、古い.apkをアンインストールしなかった場合は、おそらくデバイスにキャッシングの問題があります:) –

+0

私はapkを削除し、 'tns run android'を使って実行します。また、私は何かを逃した場合には、アンドロイドmanifest.xmlを追加しました – xerotolerant

答えて

10

私のアプリは縦向きです。アンドロイドの場合は、activityタグ内にをAndroidManifest.xmlに追加するだけです。 iOSの場合、AndroidManifest.xmlを変更した後にopen Xcode -> Select project on project navigator (left panel) -> Select target in middle panel -> Choose "General" tab -> Tick only "Portrait" in Deployment info section

+0

あなたの提案に感謝しますが、私はそれを既にAndroidマニフェストにフラグを付け加えました。私はマニフェストで投稿を更新しました。おそらく私は間違った場所に旗を置いたでしょうか?あなたはそれを見て、私に教えてくれますか? – xerotolerant

+0

私はそれを 'activity'タグの中に入れます。どこに入れましたか? –

+0

元の投稿をファイル全体で編集しました。 – xerotolerant

関連する問題