Android基礎知識(一)

此篇文章開始逐步記錄一些Android開發的一些相關知識。本文主要講了一些adb的常用指令,Toast的常規使用,Intent的顯式啟動活動,按鈕點擊事件的四種處理方法,一些常見布局。

1. ADB常用指令

Android Debug Bridge adb android調試橋

  • adb start-server :開啟adb服務

  • adb kill-server :殺死adb服務

  • adb uninstall + 包名 :卸載應用

  • adb install + apk所在的路徑(包括應用名) :安裝應用

  • adb push + pc文件路徑 + android設備的路徑 :把電腦上的文件推到設備上

  • adb pull 設備上文件的路徑 pc保存文件的路徑 :把android設備上的文件保存到電腦上

  • adb shell :可以進入到linux命令行,執行linux命令

  • ls :列出所有文件

  • cd :進入到某個文件夾

  • rm : 刪除文件

  • cat :顯示文件內容

  • mkdir :創建目錄

2. Toast應用

Toast.makeText向界面輸出一個短暫提示

  • 第一個參數:上下文context Activity就是一個上下文,可以傳入Activity.this
  • 第二個參數:要顯示的提示文字
  • 第三個參數:顯示提示的時間長度(Toast.LENGTH_SHORT和Toast.LENGTH_LONG),其實也就是0和1。

最后調用show()方法顯示出來

3. intent啟動活動

Intent 意圖,就是對要進行的操作的抽象描述

Intent intent = new Intent();

給意圖設置要操作的動作,比如打電話

intent.setAction(Intent.ACTION_CALL);

給意圖設置要攜帶的數據

  • URL 統一資源定位符,不可自定義協議
  • URI 統一資源標識符,可以自定義協議
Uri data = Uri.parse("tel:" + number);
intent.setData(data);

啟動活動

startActivity(intent);

4. 點擊事件實現的四種方式

  1. 通過內部類

    ···
    MyOnClickListener listener = new MyOnClickListener();
    button.setOnClickListener(listener);
    ···
    private class MyOnClickListener implements OnClickListener{@Overridepublic void onClick(View v) {//點擊事件的邏輯實現}
    }
    ···
  2. 通過匿名內部類

    ···
    button.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {//點擊事件的邏輯實現}
    }
    ···
  3. activity實現接口

    public class MainActivity extends Activity implements OnClickListener {
    ···
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    ···button.setOnClickListener(this);
    ···
    }
    ···
    @Override
    public void onClick(View v) {//點擊事件的邏輯實現
    }
    ···
  4. 布局文件添加onclick屬性(盡量避免使用,會導致不易閱讀)

    xml代碼
    ···
    <Button
        android:layout_width="wrap_content"android:layout_height="wrap_content"android:onClick="click"android:text="button" />
    ···
    java代碼
    ···
    public void click(View v){//點擊事件的邏輯實現
    }
    ···

5. Android五大布局

在Android開發中,經常和布局打交道,用的最多的就是LinearLayout和RelativeLayout,AbsoluteLayout除了一些特定的Android TV開發,也沒見在哪里用到過了,屬于已經舍棄的方法。

LinearLayout:線性布局

  • orientation=”horizontal/vertical”

RelativeLayout:相對布局

  • layout_below=”@id/xxx”
  • layout_toRightOf=”@id/xxx”
  • layout_toLeftOf=”@id/xxx”
  • ···

FrameLayout:幀布局

  • layout_gravity

TableLayout:表格布局

  • <TableRow>···</TableRow>

AbsoluteLayout:絕對布局

  • layout_x=”?dp”
  • layout_y=”?dp”

以上屬于個人體驗心得總結,若有不足之處,還望不吝賜教,歡迎批評指正,共同進步

轉載于:https://www.cnblogs.com/cj5785/p/9892980.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/251266.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/251266.shtml
英文地址,請注明出處:http://en.pswp.cn/news/251266.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Android 6.0 動態權限申請

1. 概述 Android 6.0 (API 23) 之前應用的權限在安裝時全部授予&#xff0c;運行時應用不再需要詢問用戶。在 Android 6.0 或更高版本對權限進行了分類&#xff0c;對某些涉及到用戶隱私的權限可在運行時根據用戶的需要動態授予。這樣就不需要在安裝時被強迫同意某些權限。 2. …

el-input輸入金額,保留兩位小數

需求&#xff1a;“只允許輸入金額保留兩位小數”&#xff0c;有2種實現方法 方法一&#xff08;通過正則控制&#xff09;&#xff1a; html&#xff1a; <el-inputv-model"inputTable.amount"input"formatNum(form.amount, amount)" ></el-i…

jquery --- pip方法

我們先來看下面一個例子: var getPromise $.get(/query); getPromise.done(function(data) {var postPromise $.post(/search, data); }); // ...無法在此處給postPromise方法附加處理器// 上面先使用get方法讀取url為query的數據,在完成后,再使用post方法將數據發送給另一個…

斜率DP總結

chunlvxiong的博客 T1&#xff1a;防御準備 三個月后第一次寫博客&#xff0c;我們從這個題開始&#xff1a;http://www.lydsy.com/JudgeOnline/problem.php?id3156。 這道題DP方程比較好寫&#xff1a;用dp[i]表示1到i全部被控制的最小代價&#xff0c;那么dp[i]min{dp[j](i-…

前端使用react-intl-universal進行國際化

一、國際化 / i18n 目前國際化&#xff0c;就是開發者寫對象&#xff0c;一個key關聯若干語種的翻譯。相比于瀏覽器自帶的翻譯功能&#xff0c;語義更加準確。 “國際化”的簡稱&#xff1a;i18n&#xff08;其來源是英文單詞 internationalization的首末字符i和n&#xff0c;…

守護線程Daemon的理解

1、守護線程伴隨著主線程的銷毀而銷毀&#xff1b; 2、jvm虛擬機中有很多守護線程&#xff0c;隨著main函數的結束而結束&#xff0c;自動回收棧中的內容。 Thread t1 new Thread(){Overridepublic void run() {for (int i 0; i < 10; i) {try {Thread.sleep(1000);} catc…

javascript --- 異步函數的順序進行

假設我們希望某一組異步函數能一次進行,在不使用的任何工具的情況下,可能會編寫出類似下面的代碼: funcs[0](function() {funcs[1](function() {funcs[2](onComplete);}) });// 注:以上代碼運行會出現的一些不方便: // 1.回調太深,不利于閱讀..(100層嵌套...); // 2.不能使用循…

2021前端面試題

基礎知識與素養 JS基本功訓練與思考 程序設計的滲透與應用 業務技巧的積累與訓練 生產力轉換 項目的組織架構 轉換專業人才的全面生產力 什么樣的技術水平決定了你應該學習什么樣的知識與技術&#xff0c;什么樣的知識與技術水平決定了你到什么樣的公司&#xff0c;到什么樣的公…

JS的自定義事件(觀察者模式)

1      var Event {2 on: function (eventName, callback) {3 console.log("eventName:"eventName)4 if (!this.handles) {5 Object.defineProperty(this, "handles", {6 …

glog日志庫使用筆記

日志能方便地診斷程序原因、統計程序運行數據&#xff0c;是大型軟件系統必不可少的組件之一。glog 是google的開源日志系統&#xff0c;相比較log4系列的日志系統&#xff0c;它更加輕巧靈活。 在Github上下載glog&#xff0c;解壓后用CMake生成VS2017工程&#xff08;默認生成…

javascript --- 異步工作流的動態排隊技術

很多情況下,使用async.series和async.paralle存在一個明顯的問題,即: 1.其任務隊列是靜態的,在其調用前,一定要明確任務隊列的數量,一旦明確了任務隊列的數量,就不能改變. 2.倘如要同時并發讀取上千個文件,使用async.paralle明顯不可能(各線程搶資源,根本不夠用),使用async.ser…

java中的內部類總結

內部類不是很好理解&#xff0c;但說白了其實也就是一個類中還包含著另外一個類 如同一個人是由大腦、肢體、器官等身體結果組成&#xff0c;而內部類相當于其中的某個器官之一&#xff0c;例如心臟&#xff1a;它也有自己的屬性和行為&#xff08;血液、跳動&#xff09; 顯然…

elementPlus關閉彈窗,頁面原先滾動條消失

一開始以為是彈窗內容超過一屏引起&#xff0c;改為一屏內也不能解決。 打開控制臺&#xff0c;發現彈窗后自動給body標簽加上了類el-popup-parent–hidden&#xff0c;關閉后也沒去除&#xff0c;因此手動刪除該類。 document.getElementsByTagName(body)[0].className ;

在Windows下如何創建虛擬環境(默認情況下)

很多小伙伴平時在使用Python的時候&#xff0c;有的項目需要使用Python2來進行開發&#xff0c;有的項目則是需要Python3來進行開發。當不清楚怎么分開環境的時候&#xff0c;此時兩個環境開始打架&#xff0c;彼此傻傻分不清楚。虛擬環境作為隔離的利器應運而生&#xff0c;其…

javascript --- 隱藏內部實現(最小暴露原則)

看下面的一個例子: function doSomething(a) {b a doSomethingElse( a * 2 );console.log( b * 3 ); }function doSomethingElse(a) {return a - 1; }var b;doSomething( 2 ) ; // 15上述代碼中的doSomethingElse實際上應該是doSomething的"私有"部分,根據最小暴露…

selenium python 入門-元素定位

環境搭建 安裝教程 http://www.testclass.net/selenium_python/install-selenium/ chrome瀏覽器 還需要下載chrome driver 把下載的chromedriver .exe放到chrome安裝目錄下的Application目錄下和 python所在的安裝目錄下&#xff0c;比如我的目錄是C:\Program Files (x86)\Goog…

ES5程序設計轉ES6 筆記

課程鏈接 1. 立即執行函數 特點&#xff1a;執行結束&#xff0c;立即銷毀&#xff1b;獨立作用域執行符號&#xff08;&#xff09;只能跟在表達式后面&#xff0c;不能放在函數聲明后分號可以寫在前面/后面document為傳入實參&#xff0c;doc為形參 ;(function(doc){...co…

DPDK helloworld 源碼閱讀

在 DPDK Programmers Guides 中的 EAL 一篇中有一個圖可以很清晰地看到一個DPDK的應用程序的大致執行思路&#xff1a; 初始化檢查CPU支持、微架構配置等完成后&#xff0c;執行main()函數。 第一步是 rte_eal_init()&#xff0c;核心初始化和啟動。其中線程使用的是pthread庫&…

javascript --- 作用域和閉包

執行環境: // 定義了變量或函數有權訪問的其他數據,決定了它們各自的行為 // 每個執行環境都有一個變量對象與之對應,執行環境中所定義的所有變量和函數都保存在變量對象中 // 某個執行環境中的所有代碼執行完畢后,該執行環境被銷毀,保存在其中的所有變量和函數定義也隨之銷毀…

異步下載圓形進度條顯示進度

圓形進度條參考鏈接即可&#xff1a;使用css3實現圓形進度條 需求點擊下載后遮罩層顯示下載進度&#xff1a; 1.圓形進度條參考以上鏈接&#xff0c;有點小瑕疵&#xff0c;可更改定位距離實現重合。 2.遮罩層&#xff1a; .lbOverlay{display: none;position: fixed;left: 0;…