Java Android几个重要的基础知识

原创
2019/03/22 17:19
阅读数 53

Java

1.数据类型

bit(位):0或1计算机存储处理信息的最基本的单位

byte(字节):8个bit(上面表格数字的单位是byte)

2.

m与n数值交换  //m=2,n=3;

m=m^n;            //m=2^3

n =m^n;            //n =2^3^3=2

m=m^n;            //m=2^3^2=3

3.

数组转集合,集合默认排(升)序

List<Integer> list = Arrays.asList(3,-3,0,0);

Collections.sort(list);

 

Android

1.project路径不能有中文与空格

2.进程间共享数据方式

    a.共享文件

    b.provider

    c.AIDL(双向传递)

    d.Messenger(客户端向服务端传递数据)

3.手机适配

    a.语言适配

    b.屏幕适配

    c.SDK平台适配

4.接收网络图片

    Bitmap bitmap = BitmapFactory.decodeStream(connection.getInputStream());

5.fillViewport

            <androidx.core.widget.NestedScrollView
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:fillViewport="true">

                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:orientation="vertical">

                    <androidx.recyclerview.widget.RecyclerView
                        android:id="@+id/recyclerView"
                        android:layout_width="match_parent"
                        android:layout_height="0dp"
                        android:layout_weight="1"
                        android:overScrollMode="never" />

                    <LinearLayout
                        android:id="@+id/layout_bottom"
                        android:layout_width="wrap_content"
                        android:layout_height="45dp"
                        android:layout_gravity="center_horizontal"
                        android:gravity="center_vertical"
                        android:visibility="gone">

                        <TextView
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="已经到底啦!"
                            android:textColor="@color/gray_b"
                            android:textSize="14dp" />

                        <TextView
                            android:id="@+id/tv_get_order"
                            android:layout_width="wrap_content"
                            android:layout_height="match_parent"
                            android:gravity="center"
                            android:padding="5dp"
                            android:text="去接单 >"
                            android:textColor="@color/green"
                            android:textSize="14dp" />
                    </LinearLayout>
                </LinearLayout>
            </androidx.core.widget.NestedScrollView>

6.xml根布局 

android:fitsSystemWindows="false"

7.padding 可滚动

android:clipToPadding="false"

8.可变高度viewpager

<com.ls365.lvtu.view.DynamicHeightViewPager
    android:id="@+id/viewpager"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />
import android.content.Context
import android.util.AttributeSet
import androidx.viewpager.widget.ViewPager
/**
 *     author : fgl
 *     time   : 2020/03/26
 *     desc   :工具-日期计算-根据子view动态高度viewpager
 */
class DynamicHeightViewPager : ViewPager {
    /**
     * Constructor
     *
     * @param context the context
     */
    constructor(context: Context): super(context)

    /**
     * Constructor
     *
     * @param context the context
     * @param attrs   the attribute set
     */
    constructor(context: Context, attrs: AttributeSet): super(context, attrs)

    /**
     * 解决pager中视图高度不一致的情况 动态更改pager高度
     * @param widthMeasureSpec
     * @param heightMeasureSpec
     */
    override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) {
        var heightMeasureSpec: Int
        val index = currentItem
        var height = 0
        val v = getChildAt(index)
        if (v != null) {
            v.measure(widthMeasureSpec, MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED))
            height = v.measuredHeight
        }
        heightMeasureSpec = MeasureSpec.makeMeasureSpec(height + 80, MeasureSpec.EXACTLY)
        super.onMeasure(widthMeasureSpec, heightMeasureSpec)
        val pager = this
        pager.addOnPageChangeListener(object : SimpleOnPageChangeListener() {

            override fun onPageScrolled(position: Int, positionOffset: Float, positionOffsetPixels: Int) {
                
            }

            override fun onPageScrollStateChanged(state: Int) {
                if (state == 2) {
                    requestLayout()
                }
            }

        })
    }
}

9.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:background="@color/colorPrimary"
        android:gravity="center"
        android:text="Title"
        android:textSize="24dp" />

    <androidx.coordinatorlayout.widget.CoordinatorLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <com.google.android.material.appbar.AppBarLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:orientation="vertical"
                app:layout_scrollFlags="scroll|exitUntilCollapsed">

                <ImageView
                    android:layout_width="100dp"
                    android:layout_height="100dp"
                    android:layout_margin="20dp"
                    android:src="@mipmap/ic_launcher_round" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:gravity="center"
                    android:text="phone"
                    android:textSize="24dp" />
            </LinearLayout>

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="50dp"
                android:orientation="horizontal">

                <TextView
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:gravity="center"
                    android:text="tab1"
                    android:textSize="24dp" />

                <TextView
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:gravity="center"
                    android:text="tab2"
                    android:textSize="24dp" />
            </LinearLayout>
        </com.google.android.material.appbar.AppBarLayout>

        <androidx.core.widget.NestedScrollView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            app:layout_behavior="@string/appbar_scrolling_view_behavior">

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="vertical">

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/cardview_dark_background"
                    android:gravity="center"
                    android:text="Title"
                    android:textSize="24dp" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/cardview_dark_background"
                    android:gravity="center"
                    android:text="Title"
                    android:textSize="24dp" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/cardview_dark_background"
                    android:gravity="center"
                    android:text="Title"
                    android:textSize="24dp" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/cardview_dark_background"
                    android:gravity="center"
                    android:text="Title"
                    android:textSize="24dp" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/cardview_dark_background"
                    android:gravity="center"
                    android:text="Title"
                    android:textSize="24dp" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/cardview_dark_background"
                    android:gravity="center"
                    android:text="Title"
                    android:textSize="24dp" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/cardview_dark_background"
                    android:gravity="center"
                    android:text="Title"
                    android:textSize="24dp" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/cardview_dark_background"
                    android:gravity="center"
                    android:text="Title"
                    android:textSize="24dp" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/cardview_dark_background"
                    android:gravity="center"
                    android:text="Title"
                    android:textSize="24dp" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/cardview_dark_background"
                    android:gravity="center"
                    android:text="Title"
                    android:textSize="24dp" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/cardview_dark_background"
                    android:gravity="center"
                    android:text="Title"
                    android:textSize="24dp" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/cardview_dark_background"
                    android:gravity="center"
                    android:text="Title"
                    android:textSize="24dp" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/cardview_dark_background"
                    android:gravity="center"
                    android:text="Title"
                    android:textSize="24dp" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_marginBottom="10dp"
                    android:background="@color/cardview_dark_background"
                    android:gravity="center"
                    android:text="Title"
                    android:textSize="24dp" />
            </LinearLayout>
        </androidx.core.widget.NestedScrollView>
    </androidx.coordinatorlayout.widget.CoordinatorLayout>
</LinearLayout>

 

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部