여러가지 찾아 봤는데요…
제 프로그램에 적용되는 놈을 올려봅니다.
Ti.Gesture.addEventListener(‘orientationchange’, function(e) {
Ti.Android.currentActivity.setRequestedOrientation(Ti.Android.SCREEN_ORIENTATION_PORTRAIT);
});
tiapp.xml 부분에 아무리 적용해도 안되던 부분이… 위의 코드를 app.js 에 넣고 해결이 났습니다.
Alloy 방식이 아닙니다. 참고 하시구요…
올리고 보니 살짝 편법인 것 같네요… 방향이 바뀌는 시점 이벤트에서 가로로 되는 것을 막는거 같습니다. 참고만 하시기 바랍니다.
tiapp.xml에서 고정하고자하는 activity의 orientation을 명시적으로 해도 안되었나요?
저는 예전에 공식 가이드에 나와있는 방법대로 했었는데 잘 되었거든요.
http://docs.appcelerator.com/titanium/latest/#!/guide/Orientation
네 저는 가이드의 방법 어떤것을 해도 잘 안돌아가네요… ^^ 아마도 제가 뭔까 빼먹은 듯합니다만… 지금은 둘러볼 시간이 없어서… 제 현상은 텝뷰에서는 제대로 Land가 나오지 않고 Port고정이 되는데 그것만 빼면 돌아가네요…
나중에 해결되면 올려보도록 하겠습니다. 자세히… ^^ 감사합니다.
1개의 좋아요
^^ SDK 버전은 3.1.2.GA 이구요...
템플릿은 Classic > Default Project 로 만들었습니다.
만들고 한번 빌드후에
tiapp.xml 에
테그
android xmlns:android=“http://schemas.android.com/apk/res/android”
사이에 /build/android/AndroidManifest.xml 내에 생성된 코드에
android:screenOrientation="portrait"
를 넣고 수정된 코드를 넣었습니다.
넣은 코드는 아래와 같습니다.
메니피스트 xmlns:android="http://schemas.android.com/apk/res/android"
package=“kr.freeduck.port” android:versionCode="1"
android:versionName=“1”>
<!-- TI_MANIFEST -->
<application android:icon="@drawable/appicon"
android:label="port" android:name="PortApplication"
android:debuggable="false">
<!-- TI_APPLICATION -->
<activity android:name=".PortActivity"
android:label="port" android:theme="@style/Theme.Titanium"
android:configChanges="keyboardHidden|orientation" android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="org.appcelerator.titanium.TiActivity"
android:configChanges="keyboardHidden|orientation" />
<activity android:name="org.appcelerator.titanium.TiTranslucentActivity"
android:configChanges="keyboardHidden|orientation"
android:theme="@android:style/Theme.Translucent" />
<activity android:name="ti.modules.titanium.ui.android.TiPreferencesActivity" />
<service android:name="org.appcelerator.titanium.analytics.TiAnalyticsService"
android:exported="false" />
</application>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.INTERNET"/>
</manifest>
이 코드를 넣었습니다.
1. android:configChanges="keyboardHidden|orientation" android:screenOrientation="portrait"
위의 부분을 문서에 있는 내용데로...
2. android:configChanges="keyboardHidden|screenSize" android:screenOrientation="portrait"
로 교체를 하면 에러가 나네요...
1과 같이하면 문제없이 실행되지만 가로방향으로 부드럽게 잘 넘어가 버립니다.
무슨 문제가 있을까요?
맥에서 개발하고 있구요... 테스트 기기로는 갤럭시 S2 사용하고 있습니다.
프로젝트파일은 용량이 커서 올라가지 않네요... ^^ ..
아 이제 되네요… ^^
tiapp.xml 내의 모든 activity 테그내에 android:configChanges=“keyboardHidden” android:screenOrientation=“portrait” 를 넣어주니까 되는거 같습니다.
감사합니다. ^^