アプリでスクロールビューを使用していますが、デフォルトのサイズの画面よりも長いものを描画するのはこれが初めてです。
XMLデザイン画面には、固定の3.7インチ(またはそれ以上)の画面が表示されます。オブジェクトを追加したい場合はどうすればよいですか? Eclipseでデザインしているときに下にスクロールするにはどうすればよいですか?
画面サイズをカスタムに変更できます。これを試してください。現在の画面ボタンをクリックして[カスタムを追加]を選択し、下にスクロールして[カスタム]を選択し、右上隅にある[新規]をクリックします。次に、画面のカスタムサイズを入力します。そして、「OK」をクリックしてから、もう一度「OK」をクリックします。その後、現在の画面ボタンをもう一度クリックして、カスタムサイズを選択します。完了!お役に立てば幸いです。
このボタンが選択されていることを確認してください。
一時的に設定してみてください Android:scrollY
ScrollView
上。私はこれを試していませんが、理論的にはうまくいくはずです。アプリを公開するときは、属性を削除することを忘れないでください。
追加 Android:scrollY="300dp"
あなたのレイアウトに。 Ttはコンテンツを300dp上にスクロールします。
Android:scrollY = "300dp"をレイアウトに追加する前
<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.javamad.user_profile"
>
デザインのスペースが見えない
Android:scrollY = "300dp"をレイアウトに追加した後
<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.javamad.user_profile"
Android:scrollY="300dp"
>
デザインのスペースが見えます。
Android API 19の時点で、このソリューションは変更されました。これが私にとってうまくいったことです。
Android仮想デバイスマネージャー(Eclipseではこれはウィンドウ> Android仮想デバイスマネージャー)にあります)に移動し、[デバイス定義]タブに移動して作成します新しいデバイス。「ロングスクローラー」のような印象的な名前を付けます。
[デバイスの編集/作成]画面で、垂直方向のサイズをスクロールビューの長さに設定します(私の使用には7000pxで十分でした)。後で微調整することもできます。
Eclipseを再起動し、長いスクロールビューレイアウトを開くと、プレビューレイアウトの中に長いスクローラーが表示されます。
Android:layout_marginTop="-300dp"
属性のようなものを直接のScrollView
子に追加します。
内部レイアウトを固定の高さに設定してみてください。したがって、コードは次のようになります。
<ScrollView
Android:layout_width="fill_parent"
Android:layout_height="fill_parent">
<RelativeLayout
Android:layout_height="900dp"
>
</ReleativeLayout>
</ScrollView>
これはうまくいくはずです
これが私の解決策でした。私はScrollViewをサブクラス化して、isInEditMode()の場合にのみ使用されるscrollYパラメーターを取得しました。
public class MyScollView extends ScrollView {
private int scrollY = 0;
private void init(Context context, AttributeSet attrs) {
TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.MyScrollView);
scrollY = a.getInt(R.styleable.MyScrollView_scrollY, 0);
a.recycle();
}
public MyScollView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
init(context, attrs);
}
public MyScollView(Context context, AttributeSet attrs) {
super(context, attrs);
init(context, attrs);
}
public MyScollView(Context context) {
super(context);
}
@Override
public void computeScroll() {
if (isInEditMode()) {
scrollTo(0, scrollY);
}
}
}
これはattrs.xmlファイルに入ります
<declare-styleable name="MyScrollView">
<attr name="scrollY" format="integer"/>
</declare-styleable>
<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"
Android:paddingBottom="@dimen/activity_vertical_margin"
Android:paddingLeft="@dimen/activity_horizontal_margin"
Android:paddingRight="@dimen/activity_horizontal_margin"
Android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".AdminControlPanel"
Android:scrollY="200dp">
このAndroid:scrollYは、デザイン画面をY方向に長くします...コンポーネントを下に追加します
私は通常、負のマージンを使用します。内部のアイテムと同様にスクロールビューで機能します。