আমি মনে করি এটি বাস্তবায়নযোগ্য যেহেতু স্ক্রিন রোটেশন আচরণ অ্যাপ্লিকেশন স্তরে যেতে পারে।
উত্তর:
হ্যাঁ এটি কার্যকর!
ক্রিয়াকলাপ তথ্য.এস.সি.আর.সি.আর
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
ক্রিয়াকলাপ তথ্য.এস.সি.আর.সি.আর
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
ক্রিয়াকলাপ
http://developer.android.com/references/android/content/pm/ActivityInfo.html
লিঙ্কটি উল্লেখ করুন:
Button buttonSetPortrait = (Button)findViewById(R.id.setPortrait);
Button buttonSetLandscape = (Button)findViewById(R.id.setLandscape);
buttonSetPortrait.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View arg0) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
});
buttonSetLandscape.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View arg0) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
});
http://android-er.blogspot.in/2011/08/set-screen-orientation-programmatically.html
হ্যাঁ, আপনি যে কোনও সময় ব্যবহার করতে চাইলে স্ক্রিন ওরিয়েন্টেশনটি প্রোগ্রামক্রমেটিক সেট করতে পারেন:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
যথাক্রমে ল্যান্ডস্কেপ এবং প্রতিকৃতি মোডের জন্য। অ্যাক্টিভিটি ক্লাসের জন্য সেট-রিকুইস্টেড ওরিয়েন্টেশন () পদ্ধতি উপলব্ধ , তাই এটি আপনার ক্রিয়াকলাপের অভ্যন্তরে ব্যবহার করা যেতে পারে।
এবং এইভাবে আপনি বর্তমান স্ক্রিনের ওরিয়েন্টেশন পেতে এবং এটির বর্তমান অবস্থার উপর নির্ভর করে পর্যাপ্ত পরিমাণে সেট করতে পারেন:
Display display = ((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay();
final int orientation = display.getOrientation();
// OR: orientation = getRequestedOrientation(); // inside an Activity
// set the screen orientation on button click
Button btn = (Button) findViewById(R.id.yourbutton);
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
switch(orientation) {
case Configuration.ORIENTATION_PORTRAIT:
setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
break;
case Configuration.ORIENTATION_LANDSCAPE:
setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
break;
}
}
});
এখান থেকে নেওয়া হয়েছে: http://techblogon.com/android-screen-orientation- بدل-rotation-example/
সম্পাদনা
এছাড়াও, আপনি স্ক্রিন ওরিয়েন্টেশন ব্যবহার করে এটি পেতে পারেন Configuration
:
Activity.getResources().getConfiguration().orientation
getRequestedOrientation()
বর্তমান স্ক্রীনে অভিযোজন পেতে: stackoverflow.com/a/21909327/1037294
getRequestedOrientation()
আপনি UNSPECIFIED
অ্যাপ্লিকেশন শুরু করার সময় আপনাকে দেয় । সুতরাং উপরে শ্রোতা সঙ্গে এটি পর্দা পরিবর্তন করবে না এবং যদি আপনি যোগ UNSPECIFIED
করতে switch
এটি এক পর্দা করা উচিত প্রতিকৃতি / ল্যান্ডস্কেপ প্রথম স্থান।
যেখানেই সম্ভব, দয়া করে SCREEN_ORIENTATION_landSCAPE বা SCREEN_ORIENTATION_PORTRAIT ব্যবহার করবেন না। পরিবর্তে ব্যবহার করুন:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);
এগুলি ব্যবহারকারীকে যথাক্রমে ল্যান্ডস্কেপ অভিযোজন, বা হয় প্রতিকৃতি অভিমুখীকরণের জন্য ডিভাইসটি অভিমুখী করতে দেয়। আপনার পেটে যখন চার্জিং কেবলটি চালিত হচ্ছে এমন কোনও খেলাগুলি যদি আপনাকে কখনও খেলতে হয় তবে আপনি অবশ্যই জানেন যে কেন উভয় প্রকারের উপলব্ধতা ব্যবহারকারীর পক্ষে গুরুত্বপূর্ণ is
দ্রষ্টব্য: ফোনের জন্য, আমি যাচাই করেছি এমন কমপক্ষে বেশ কয়েকটি, এটি কেবলমাত্র "ডান দিকের" প্রতিকৃতি মোডকে মঞ্জুরি দেয়, তবে, সেনসোর_পুর্ট্রেট ট্যাবলেটগুলিতে সঠিকভাবে কাজ করে।
দ্রষ্টব্য: এই বৈশিষ্ট্যটি এপিআই লেভেল 9 এ প্রবর্তিত হয়েছিল, সুতরাং আপনার যদি 8 বা তত কম সমর্থন করতে হয় (তবে সম্ভবত এই সময়ে নয়) তবে তার পরিবর্তে ব্যবহার করুন:
setRequestedOrientation(Build.VERSION.SDK_INT < 9 ?
ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE :
ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
setRequestedOrientation(Build.VERSION.SDK_INT < 9 ?
ActivityInfo.SCREEN_ORIENTATION_PORTRAIT :
ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);
স্ক্রিনের ওরিয়েন্টেশন সেট করতে এটি ব্যবহার করুন:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
বা
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
এবং এটি আপনার প্রকাশ্যে যুক্ত করতে ভুলবেন না:
android:configChanges = "orientation"
"orientation|screenSize"
, এখানে দেখুন: বিকাশকারী.অ্যান্ড্রয়েড
একটি কার্যকারী কোড:
private void changeScreenOrientation() {
int orientation = yourActivityName.this.getResources().getConfiguration().orientation;
if (orientation == Configuration.ORIENTATION_LANDSCAPE) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
showMediaDescription();
} else {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
hideMediaDescription();
}
if (Settings.System.getInt(getContentResolver(),
Settings.System.ACCELEROMETER_ROTATION, 0) == 1) {
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
}
}, 4000);
}
}
আপনার বোতাম ক্লিক এই পদ্ধতি কল