ラベル Android_Layout の投稿を表示しています。 すべての投稿を表示
ラベル Android_Layout の投稿を表示しています。 すべての投稿を表示

2017年6月28日水曜日

android app中如何获取电源锁保持屏幕常亮

android app中如何获取电源锁保持屏幕常亮

protected void screen_on() {
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}

protected void screen_off() {
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}






2017年6月4日日曜日

android 屏幕旋转

android 屏幕旋转


<activity android:name=".MainActivity"
android:screenOrientation="portrait">
纵向方向(显示的高度大于宽度)。

https://developer.android.com/guide/topics/manifest/activity-element.html

2017年1月23日月曜日

Android Dialog Title 非显现

Android Dialog Title 非显现

protected void dia() {
        NDaig nDaig = new NDaig(this);
        nDaig.requestWindowFeature(Window.FEATURE_NO_TITLE);
        nDaig.show();
 }







2016年12月1日木曜日

Android getDrawable,getColor 过时的替代方法

Android getDrawable,getColor 过时的替代方法

public class ContextCompat{}








public class MainActivity extends AppCompatActivity implements View.OnClickListener {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        RelativeLayout relativeLayout = (RelativeLayout) findViewById(R.id.activity_main);
        LinearLayout linearLayout = new LinearLayout(this);
        linearLayout.setOrientation(LinearLayout.VERTICAL);
        relativeLayout.addView(linearLayout);

        for (int i = 0; i < 3; i++) {
            ImageView imageView = new ImageView(this);
//          过时
//          imageView.setImageDrawable(getDrawable(R.drawable.android));
//          替代方法
            imageView.setImageDrawable(ContextCompat.getDrawable(getApplicationContext(), R.drawable.firefox));
            TextView textView = new TextView(this);
            textView.setBackgroundColor(ContextCompat.getColor(getApplicationContext(), android.R.color.holo_orange_dark));
            textView.setText(String.valueOf(i));
            imageView.setId(i);
            textView.setId(i);
            linearLayout.addView(imageView);
            linearLayout.addView(textView);
            imageView.setOnClickListener(this);
            textView.setOnClickListener(this);
        }
    }

    @Override
    public void onClick(View v) {
        String idinfo = "";
        switch (v.getId()) {
            case 1:
                idinfo = "Button1";
                break;
            case 2:
                idinfo = "Button2";
                break;
            case 0:
                idinfo = "Button1";
                break;
        }
        Toast.makeText(this, idinfo, Toast.LENGTH_SHORT).show();
    }
}

2016年11月29日火曜日

Android_Layout 用代码得到对象的高宽

Android_Layout 用代码得到对象的高宽

当设定 ViewGroup.LayoutParams 的设定优先。




 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button button = new Button(getApplicationContext());
        button.setText("Button");
//        ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
        ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams(500, 500);
        ViewGroup viewGroup = (ViewGroup) findViewById(R.id.activity_main);
        button.setHeight(400);
        button.setWidth(400);
//        viewGroup.addView(button);
        viewGroup.addView(button, layoutParams);

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                RelativeLayout.LayoutParams rl = (RelativeLayout.LayoutParams) ((Button) v).getLayoutParams();
                System.out.println(rl.height);
                System.out.println(rl.width);
                System.out.println(((Button) v).getHeight());
                System.out.println(((Button) v).getWidth());
            }
        });
    }


当>>>>
        ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams(500, 500);
        ViewGroup viewGroup = (ViewGroup) findViewById(R.id.activity_main);
        button.setHeight(400);
        button.setWidth(400);
        viewGroup.addView(button, layoutParams);

结果
I/System.out: 500
I/System.out: 500
I/System.out: 500
I/System.out: 500


当>>>>
        button.setText("Button");
//        ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams(500, 500);
        ViewGroup viewGroup = (ViewGroup) findViewById(R.id.activity_main);
        button.setHeight(400);
        button.setWidth(400);
        viewGroup.addView(button);

结果
I/System.out: -2
I/System.out: -2
I/System.out: 400
I/System.out: 400



Android_Layout 用代码添加对象

Android LayoutParams

用代码添加对象(按键),并设置LayoutParames,
当按键Click时,变更LayoutParames 的值。





public class MainActivity extends AppCompatActivity {

    /**
     * https://www.youtube.com/watch?v=QSsvUbPVHOU&index=3&list=PLTstZD3AK3S9sR6uiKzmNtgnY5p4nMT3Z
     *
     * @param savedInstanceState
     */
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       
        Button button = new Button(getApplicationContext());
        button.setText("Button");
        ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
        ViewGroup viewGroup = (ViewGroup) findViewById(R.id.activity_main);
//      "NG>>"  ViewGroup viewGroup = (ViewGroup) findViewById(R.layout.activity_main);
        viewGroup.addView(button, layoutParams);

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                RelativeLayout.LayoutParams layoutParams1 = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
                ((Button) v).setLayoutParams(layoutParams1);
//                java.lang.ClassCastException: android.view.ViewGroup$LayoutParams cannot be cast to android.widget.RelativeLayout$LayoutParams
//                "NG>>" ViewGroup.LayoutParams layoutParams1 = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
//                Button bbt = (Button) v;
//                bbt.setLayoutParams(layoutParams1);
            }
        });
    }
}