Android學(xué)習(xí) 界面布局

總說

總的來說诡曙,今天的學(xué)習(xí)是比較輕松的谁不,畢竟接觸了真正的開發(fā)手段钠导。真正的使用Android Studio設(shè)計開發(fā)一個應(yīng)用程序的感覺還挺不錯的震嫉。今天的項目是開發(fā)一個撕衣服軟件,手指滑動 衣服消失牡属。在學(xué)習(xí)項目的同時說明界面開發(fā)的方法以及如何使用票堵。開始今天的筆記

首先開始今天筆記
/**

  • Activity——— 一個界面
  • 管理一個界面從創(chuàng)建到運行的過程
  • 1.創(chuàng)建界面 Create
  • 2.啟動界面 Start
  • 3.重啟界面
  • 4.暫停界面 Pause
  • 5.銷毀界面 Destroy
  • 界面祈禱那個
  •  onCreate
    
  •  onStart
    
  •  onResume
    
  • 點擊home鍵 返回主界面
  •  onPause
    
  •  銅鼓后臺重新運行主程序
    
  •  onRestart
    
  •  onStart
    
  •  onResume
    
  • 使用返回鍵返回主頁面
  •  onPause、
    
  •  onStart
    
  •  onResume
    
  •  使用倆種方式界面布局
    
  •  xml配置
    
  •  使用Java代碼創(chuàng)建
    
  • 默認一個Activity對應(yīng)的配置文件
  • 命名特點 activity_界面功能.xml
  • xml空文件據(jù)說一個容器 可以放很多控件
  • 布局 這么多控件該怎么布局
  • 1.約束布局 ConstraintLayout
  • 2.線性布局 LineratLayout 垂直 水平
  • 3.相對布局
  • 4.幀布局
    *5.表格布局
  • 6絕對布局
    */

/**

  • 1.學(xué)習(xí)自帶控件 熟悉
  • TestView EditTest Button ImageView ListView
  • RecycleView ScrollView ViewPager ProgressBar
  • Switch
  • 2.高級階段 自定義
  • 1.在已有的控件的基礎(chǔ)上加上自己的功能 繼承
  • 2.自己做
    */

/**

  • 控件的尺寸
  • 父視圖
  • 子視圖
  • 將一個控件放到一個容器中 控件就是容器的子視圖
  • 容器是空間的父視圖
  • 1.match_parent 和父視圖一樣大
  • 2.warp_content 包括內(nèi)容 和控件的內(nèi)容一樣大
    1. 20dp 具體尺寸
      */

/**

  • 一個控件就是一個類的具體對象
  • ImageView
  • 屬性
  • 方法
  • 程序或者某個Ui板塊都可以有自己的樣式板塊Style
  • 可以在styles.xml文件里面定義
  • 不需要ActionBar 可以改成NoActionBar
    */

/**

  • 什么時候需要使用代碼區(qū)創(chuàng)建 什么時候使用xml配置
  • 若干需要添加的控件是靜態(tài)的 (變化的東西不多)選擇xml配置
  • 如果余姚靈活的操作這個控件 選擇代碼創(chuàng)建
    */

操作過程

  • 明確目的

首先逮栅,要完成這個項目悴势,要了解他的構(gòu)架,要完成他首先要將它弄成倆張圖片措伐,一張圖片有衣服特纤,一張沒有,在手指劃過的地方的衣服像素轉(zhuǎn)化為透明像素侥加,暴露出下面的圖片捧存。即可完成這個目的。

  • 導(dǎo)入圖片

將沒衣服的圖片A作為背景圖導(dǎo)入担败,有衣服的圖B導(dǎo)入覆蓋昔穴,并且給B一個圖片id方便后面的操作。代碼如下

<FrameLayout 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"
    tools:context=".MainActivity"
    android:id="@+id/fl_main"
    >

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:src="@drawable/bg" />

    <ImageView
        android:id="@+id/iv_forpart"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:src="@drawable/fr" />


</>
  • 建立一個容器

這個容器里面放著我們操作需要的工具以及方法提前,首先我們要建立這個容器


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

然后吗货,我們還要把材料庫里面的圖片找到并且載入。同時復(fù)制一份圖片出來用于后面的操作(PS :不能對原圖進行操作岖研,會報錯)

//找到容器里面的圖片視圖控件
        //findImageViewById
        ImageView forground=findViewById(R.id.iv_forpart);
        //將需要操作的圖片讀取出來
        //BitmapFactory  用于管理位圖
        //decodeByteArray  從工程中申成一張位圖
        //getResource()  獲取工程資源
        //R卿操。drawable.fr  圖片具體資源路徑
        Bitmap orgBitmip= BitmapFactory.decodeResource(getResources(),R.drawable.fr);
        Bitmap copyBitmap=Bitmap.createBitmap(orgBitmip.getWidth(),orgBitmip.getHeight(),orgBitmip.getConfig());

創(chuàng)建一個畫布警检,并且對復(fù)制的圖片進行操作,操作完成后把圖片顯示出來

     //操作這張圖片害淤。用透明色區(qū)替換這張圖片的部分
        //不能操作原圖
        orgBitmip.setPixel(240,400,Color.WHITE);
        //創(chuàng)建一個畫布  Canvas
        Canvas canvas=new Canvas(copyBitmap);


        //顯示圖片
        forground.setImageBitmap(orgBitmip);

        //創(chuàng)建一個畫筆
        Paint paint=new Paint();

        //創(chuàng)建一個矩陣
        Matrix matrix=new Matrix();

        //選擇圖片
        //旋轉(zhuǎn)圖片matrix.setRotate(90,240,400);
        //平移
       // matrix.setTranslate(100,0);
        //翻轉(zhuǎn)
        matrix.setScale(-1f,-1f);

        //畫一幅畫
        canvas.drawBitmap(orgBitmip,matrix,paint);
        //顯示圖片
        forground.setImageBitmap(copyBitmap);

結(jié)語

雖然好多不懂扇雕,但是比起剛剛開始的那個小程序來說。還是理解了一些東西窥摄∠夥睿總的來說有點進步,但是還是有好多錯誤崭放,一些運行時出現(xiàn)的錯誤野沒辦法解決哨苛,還是讓我抓老殼,希望以后能順暢的解決這些問題币砂。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末建峭,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子决摧,更是在濱河造成了極大的恐慌亿蒸,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,657評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掌桩,死亡現(xiàn)場離奇詭異边锁,居然都是意外死亡,警方通過查閱死者的電腦和手機波岛,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評論 3 394
  • 文/潘曉璐 我一進店門茅坛,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人则拷,你說我怎么就攤上這事贡蓖。” “怎么了煌茬?”我有些...
    開封第一講書人閱讀 164,057評論 0 354
  • 文/不壞的土叔 我叫張陵摩梧,是天一觀的道長。 經(jīng)常有香客問我宣旱,道長,這世上最難降的妖魔是什么叛薯? 我笑而不...
    開封第一講書人閱讀 58,509評論 1 293
  • 正文 為了忘掉前任浑吟,我火速辦了婚禮,結(jié)果婚禮上耗溜,老公的妹妹穿的比我還像新娘组力。我一直安慰自己,他們只是感情好抖拴,可當我...
    茶點故事閱讀 67,562評論 6 392
  • 文/花漫 我一把揭開白布燎字。 她就那樣靜靜地躺著腥椒,像睡著了一般。 火紅的嫁衣襯著肌膚如雪候衍。 梳的紋絲不亂的頭發(fā)上笼蛛,一...
    開封第一講書人閱讀 51,443評論 1 302
  • 那天,我揣著相機與錄音蛉鹿,去河邊找鬼滨砍。 笑死,一個胖子當著我的面吹牛妖异,可吹牛的內(nèi)容都是我干的惋戏。 我是一名探鬼主播,決...
    沈念sama閱讀 40,251評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼他膳,長吁一口氣:“原來是場噩夢啊……” “哼响逢!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起棕孙,我...
    開封第一講書人閱讀 39,129評論 0 276
  • 序言:老撾萬榮一對情侶失蹤舔亭,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后散罕,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體分歇,經(jīng)...
    沈念sama閱讀 45,561評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,779評論 3 335
  • 正文 我和宋清朗相戀三年欧漱,在試婚紗的時候發(fā)現(xiàn)自己被綠了职抡。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,902評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡误甚,死狀恐怖缚甩,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情窑邦,我是刑警寧澤擅威,帶...
    沈念sama閱讀 35,621評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站冈钦,受9級特大地震影響郊丛,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜瞧筛,卻給世界環(huán)境...
    茶點故事閱讀 41,220評論 3 328
  • 文/蒙蒙 一厉熟、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧较幌,春花似錦揍瑟、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽滤馍。三九已至,卻和暖如春底循,著一層夾襖步出監(jiān)牢的瞬間巢株,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評論 1 269
  • 我被黑心中介騙來泰國打工此叠, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留纯续,地道東北人。 一個月前我還...
    沈念sama閱讀 48,025評論 2 370
  • 正文 我出身青樓灭袁,卻偏偏與公主長得像猬错,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子茸歧,可洞房花燭夜當晚...
    茶點故事閱讀 44,843評論 2 354

推薦閱讀更多精彩內(nèi)容

  • ¥開啟¥ 【iAPP實現(xiàn)進入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程倦炒,因...
    小菜c閱讀 6,409評論 0 17
  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴謹 對...
    cosWriter閱讀 11,101評論 1 32
  • 1.程序目錄介紹程序目錄介紹.png 2.Activity類 Activity是一個應(yīng)用組件,用戶可與其提供的屏幕...
    yuan_hh閱讀 509評論 0 0
  • Day1: 在代碼中通過R.string.hello_world可以獲得該字符串的引用软瞎; 在XML中通過@stri...
    冰凝雪國閱讀 1,403評論 0 5
  • 面試題總結(jié) 通用 安卓學(xué)習(xí)途徑, 尋找資料學(xué)習(xí)的博客網(wǎng)站 AndroidStudio使用, 插件使用 安卓和蘋果的...
    JingBeibei閱讀 1,676評論 2 21