0

アクティビティ内で Android の相対レイアウトを下にスライドさせたい。レイアウトを下にスライドする次の関数があります。

public void setLayoutAnim_slidedown(ViewGroup panel, Context ctx) {

    AnimationSet set = new AnimationSet(true);

    Animation animation = new TranslateAnimation(
            Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF,
            0.0f, Animation.RELATIVE_TO_SELF, -1.0f,
            Animation.RELATIVE_TO_SELF, 0.0f);
    animation.setDuration(800);
    animation.setAnimationListener(new AnimationListener() {

        @Override
        public void onAnimationStart(Animation animation) {
            // TODO Auto-generated method stub
            // MapContacts.this.mapviewgroup.setVisibility(View.VISIBLE);

        }

        @Override
        public void onAnimationRepeat(Animation animation) {
            // TODO Auto-generated method stub

        }

        @Override
        public void onAnimationEnd(Animation animation) {

            // TODO Auto-generated method stub

        }
    });
    set.addAnimation(animation);

    LayoutAnimationController controller = new LayoutAnimationController(
            set, 0.25f);
    panel.setLayoutAnimation(controller);

}

ご覧のとおり、最初の行のパラメーターは ViewGroup タイプです。私の質問は、View グループを参照するにはどうすればよいかということです ...

私は次のことを試したことに注意してください

                LayoutInflater inflater = (LayoutInflater) myContext
                        .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                View v = inflater.inflate(R.layout.childView, null);

しかし、これは View ではなく groupView を返します!

4

1 に答える 1

1

ViewGroupR.layout.childView が ViewGroup で始まる場合は、返された結果を型キャストするだけで問題ありません。

ViewGroup vg = (ViewGroup )inflater.inflate(R.layout.childView, null);
于 2012-04-26T09:14:59.700 に答える