1

3 つの異なるフレームレイアウトを持つその内部に Linearlayout を配置します。そのフレーム レイアウトでは、adaper getview 内にフラグメントを動的に追加しています。最初に、アダプターの getview が 2 回呼び出されます。その後、フリップごとに 1 回呼び出されます。それに伴い、フリップビュー機能を追加しました。フリップ前の最初の画面では、動的フラグメントがメイン ビューに追加されません。しかし、後で反転した画面では、適切に追加されています。

これについて私を助けてください。

前もって感謝します。

public class MainActivity extends Activity {

private FragmentTransaction fragMentTra = null;
protected FlipViewController flipView;
private LayoutInflater inflater;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    flipView = new FlipViewController(this);

    flipView.setAdapter(new BaseAdapter() {
        public int getCount() {
            return 2;
        }

        public Object getItem(int position) {
            return position;
        }

        public long getItemId(int position) {
            return position;
        }

        @SuppressLint("NewApi")
        public View getView(int position, View convertView, ViewGroup parent) {

            View layout = convertView;


            if (convertView == null) {
                inflater = LayoutInflater.from(parent.getContext());
                layout = inflater.inflate(R.layout.activity_main, null);
                AphidLog.d("created new view from adapter: %d", position);
            }
            NewsFragment[] newsFragment_obj = new NewsFragment[GlobalValues.titile.length];

            fragMentTra = getFragmentManager().beginTransaction();

            for (int i = 0; i < GlobalValues.titile.length; i++) {
                newsFragment_obj[i] = new NewsFragment(
                        GlobalValues.titile[i], GlobalValues.content[i]);
                AphidLog.d("Array Loc: %d", i);
            }

            fragMentTra.add(R.id.fragment_container1, newsFragment_obj[0],
                    "Fragment1");
            fragMentTra.add(R.id.fragment_container2, newsFragment_obj[1],
                    "Fragment2");
            fragMentTra.add(R.id.fragment_container3, newsFragment_obj[2],
                    "Fragment3");

            fragMentTra.commit();

            return layout;
        }
    });
    setContentView(flipView);
}
4

0 に答える 0