Bunun için yazılım tuşu açıldığında etkinlik sayfasının kaydırılacağını istiyorum.kaydırma etkinliği sayfası android
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int height = size.y;
int x=getActionBarHeight();//in this line I get the actionBar height programicaly the function is in the end of page
RelativeLayout l= (RelativeLayout)findViewById(R.id.LayoutBackground);
l.getLayoutParams().height = (height-x);//the layout size = size of full screen - size of actionBar
}
//I saw this function in stackOverflow site. function to get the actionBar height
public int getActionBarHeight() {
TypedValue tv = new TypedValue();
getApplicationContext().getTheme().resolveAttribute(android.R.attr.actionBarSize, tv, true);
int actionBarHeight = getResources().getDimensionPixelSize(tv.resourceId);
return actionBarHeight;
}
tezahür:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.trying"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="16"
android:targetSdkVersion="21" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:windowSoftInputMode="stateHidden" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
IDIA olmasıdır
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.trying.MainActivity"
>
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<RelativeLayout
android:id="@+id/LayoutBackground"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/background"
>
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" >
<requestFocus />
</EditText>
</RelativeLayout>
</ScrollView>
</RelativeLayout>
ve
kodunda realativeLayout yüksekliği değişti, ben xml kaydırma Görünüm eklenen Bunu yapmak için layout heigt, ekran boyutuna (tüm cihazlar) ve eylem çubuğuna da bağlıdır.Sorunum, uygulamayı çalıştırdığımda arka planın küçük olmasıdır. Bunu mizanpajınızda scrollview eklemek gerekmez özellikle aktivite
android:windowSoftInputMode="adjustResize"
o çoğaltmak değil @RohitArya ... Aynı sorun benim projede de oldu, ben de senin gibi çözümü kullanın ama başarıyı alamadım. ama sadece adjustResize kullanarak problemim çözüldü. <: Name = "activity.CreateAddSubjectActivity." android: label = "@ string/title_activity_create_add_subject" android: windowSoftInputMode = "adjustResize" etkinliği android> –
@RohitArya seni ... gösterebilir Sevgili ve benim cevabım arasında bir çok fark var ... bilmelisin. –
@RohitArya .. –