LayoutInsetsTest.java revision 7a23b49a8ceb07d3fa12c45fd42cd16131fd746a
11557fd7809078e421f751efc7d2539b3efdc54b2Philip Milnepackage com.android.test.layout;
21557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne
31557fd7809078e421f751efc7d2539b3efdc54b2Philip Milneimport android.app.Activity;
41557fd7809078e421f751efc7d2539b3efdc54b2Philip Milneimport android.content.Context;
51557fd7809078e421f751efc7d2539b3efdc54b2Philip Milneimport android.os.Build;
61557fd7809078e421f751efc7d2539b3efdc54b2Philip Milneimport android.os.Bundle;
77a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milneimport android.view.Gravity;
81557fd7809078e421f751efc7d2539b3efdc54b2Philip Milneimport android.view.View;
91557fd7809078e421f751efc7d2539b3efdc54b2Philip Milneimport android.widget.Button;
101557fd7809078e421f751efc7d2539b3efdc54b2Philip Milneimport android.widget.GridLayout;
111557fd7809078e421f751efc7d2539b3efdc54b2Philip Milneimport android.widget.TextView;
121557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne
137a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milneimport static android.widget.GridLayout.ALIGN_BOUNDS;
147a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milneimport static android.widget.GridLayout.LayoutParams;
157a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milneimport static android.widget.GridLayout.OPTICAL_BOUNDS;
161557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne
171557fd7809078e421f751efc7d2539b3efdc54b2Philip Milnepublic class LayoutInsetsTest extends Activity {
187a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne    static int[] GRAVITIES = {Gravity.LEFT, Gravity.LEFT, Gravity.CENTER_HORIZONTAL, Gravity.RIGHT, Gravity.RIGHT};
197a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne
201557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne    public static View create(Context context) {
217a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne        final int N = GRAVITIES.length;
227a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne
231557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne        GridLayout p = new GridLayout(context);
241557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne        p.setUseDefaultMargins(true);
257a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne        //p.setAlignmentMode(ALIGN_BOUNDS);
267a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne        p.setLayoutMode(OPTICAL_BOUNDS);
277a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne
287a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne        p.setColumnCount(N);
297a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne
307a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne        for (int i = 0; i < 2*N; i++) {
317a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne            View c;
327a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne            if (i % 2 == 0) {
337a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne                TextView tv = new TextView(context);
347a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne                tv.setTextSize(32);
357a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne                tv.setText("A");
367a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne                c = tv;
377a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne            } else {
387a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne                Button b = new Button(context);
397a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne                b.setBackgroundResource(R.drawable.btn_default_normal);
407a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne                b.setText("B");
417a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne                c = b;
427a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne            }
437a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne
447a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne            LayoutParams lp = new LayoutParams();
457a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne            lp.setGravity(GRAVITIES[(i % N)]);
467a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne            p.addView(c, lp);
47bbd51f1e360b22eece1d74bd65c7e6a0b59dee59Philip Milne
481557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne        }
491557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne
507a23b49a8ceb07d3fa12c45fd42cd16131fd746aPhilip Milne
511557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne        return p;
521557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne    }
531557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne
541557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne    protected void onCreate(Bundle savedInstanceState) {
551557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne        super.onCreate(savedInstanceState);
561557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne        //getApplicationInfo().targetSdkVersion = Build.VERSION_CODES.ICE_CREAM_SANDWICH;
571557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne        getApplicationInfo().targetSdkVersion = Build.VERSION_CODES.JELLY_BEAN;
581557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne        setContentView(create(this));
591557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne    }
601557fd7809078e421f751efc7d2539b3efdc54b2Philip Milne}
61