我的Android第二課

来源:http://www.cnblogs.com/xiaotaojing/archive/2016/11/16/6068069.html
-Advertisement-
Play Games

嗨!各位,小編又和大家分享知識啦,在昨天的博客筆記中小編給大家講解瞭如何去配置Android工具以及SDK中的一些配置,那在今天的學習小編會帶給大家哪些Android知識呢?首先我們看一下今天的學習目錄吧。 知識一:瞭解Android項目目錄結構 知識二:Android的配置文件(清單文件) 知識三 ...


     嗨!各位,小編又和大家分享知識啦,在昨天的博客筆記中小編給大家講解瞭如何去配置Android工具以及SDK中的一些配置,那在今天的學習小編會帶給大家哪些Android知識呢?首先我們看一下今天的學習目錄吧。

    知識一:瞭解Android項目目錄結構

    知識二:Android的配置文件(清單文件)

    知識三:瞭解DDMS的作用

    知識四:adb執行命令和配置

    知識五:簡單案例(打電話)

       Android項目的目錄結構

  • Activity:應用被打開時顯示的界面
  • src:項目代碼
  • R.java:項目中所有資源文件的資源id,在文件下可以通過id讀取到layout中的文件信息,相當於程式的資源指針
  • Android.jar:Android的jar包,導入此包方可使用Android的api
  • libs:導入第三方jar包
  • assets:存放資源文件,比方說mp3、視頻文件
  • bin:存放編譯打包後的文件
  • res:存放資源文件,存放在此文件夾下的所有資源文件都會生成資源id
  • drawable:存放圖片資源
  • layout:存放佈局文件,把佈局文件通過資源id指定給activity,界面就會顯示出該佈局文件定義的佈局
  • menu:定義菜單的樣式
  • Strings.xml:存放字元串資源,每個資源都會有一個資源id

       Android的配置文件(清單文件)

  • 指定應用的包名

    package="com.itheima.helloworld"
    
    • data/data/com.itheima.myFirstAndroid(上面代碼指定的包名)
    • 應用生成的文件都會存放在此路徑下
  • Android的四大組件在使用前全部需要在清單文件中配置

  • 配置對整個應用生效
  • 配置對該activity生效

    DDMS

  • Dalvik debug monitor service
  • Dalvik調試監控服務:在該調試控制器中可以看到你對應的設備連接信息,還有你與哪些設備建立了連接操作

   adb執行命令和配置

         Android debug bridge:安卓調試橋:adb是Eclipse與伺服器設備建立的連接橋梁,adb程式能夠可以給任何一款Android設備建立連接,在adb程式還可以獲取你當前連接設備的所有信息

        在啟用adb程式時我們可以方便快捷的使用如下命令

  • adb start-server:啟動adb進程
  • adb kill-server:殺死adb進程
  • adb devices:查看當前與開發環境連接的設備,此命令也可以啟動adb進程
  • adb install XXX.apk:往模擬器安裝apk
  • adb uninstall 包名:刪除模擬器中的應用
  • adb shell:進入linux命令行
  • ps:查看運行進程
  • ls:查看當前目錄下的文件結構
  • netstat -ano:查看占用埠的進程 

 哈哈,可能有些學者已經遇到問題了,就是在打開DOM視窗執行命令時候怎麼執行不了呢?

    adb配置

    沒關係,問題好解決,只需要配置一下adb的環境變數即可

   首先打開  控制面板-->系統和安全-->系統 -->高級設置-->環境變數 -->Path變數

   點擊編輯:首先要找到你的sdk中存放adb.exe文件目錄

 

  獲取該目錄的路徑

:演示路徑:F:\AndroidStudy\adt-bundle-windows-x86_64-20140702\sdk\platform-tools

  然後將該路徑複製到你的Path變數值中即可

  簡單案例(打電話)

   功能:用戶輸入一個號碼,點擊撥打按鈕,啟動系統打電話的應用把號碼撥打出去

  1.新建一個Android工程   

  

  2.點擊res 目錄下的layout文件打開activity_main.xml 配置文件

   3.生成幾個控制項,一:文本編輯控制項、二:按鈕控制項

   activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" 
    android:orientation="vertical"
    >
    <TextView
        android:id="@+id/textView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="請輸入你要撥打的電話號碼" />
    
    <EditText 
        android:id="@+id/edit_Test"
         android:layout_width="match_parent"
        android:layout_height="wrap_content"
        
        />
     <Button 
         android:id="@+id/btn_cell"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:text="打電話"
         />
</LinearLayout>

   註1:組件必須設置寬高,否則不能通過編譯

android:layout_width="wrap_content"
android:layout_height="wrap_content"

    為了方便我們控制佈局內容我們將xml中的 <RelativeLayout ></RelativeLayout >改為了<LinearLayout></LinearLayout>

   以下是控制項生成的效果圖

   註2:如果相對應的控制是自己手動生成的,那麼必須指定一個控制項Id  android:id="@+id/textView1" 否則運行出錯

android:id="@+id/textView1"

  

  4.編寫我們的Java代碼

  點擊src 下的MainActivity.java文件 ,編寫如下代碼

package com.example.myfirstandroid;

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;


public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       //獲取一個btn_cell按鈕對象
       Button btn = (Button)this.findViewById(R.id.btn_cell);
       //給該按鈕對象綁定一個按鈕監聽事件
       btn.setOnClickListener(new MyListener());
       
    }
    
    //編寫一個監聽內部類實現OnClickListener監聽介面
    class MyListener implements OnClickListener{

        @Override
        //重寫該介面的單擊事件方法
        public void onClick(View v) {
            //獲取編輯文本對象
            EditText editTest = (EditText)findViewById(R.id.edit_Test);
            //獲取該編輯文本的內容
            String number = editTest.getText().toString() ;
            
            //獲取一個系統內置的一個打電話的功能,告訴系統我們要執行打電話操作
            //獲取一個創建圖對象
            Intent intent = new Intent();
            //將動作封裝到創建圖中
            intent.setAction(Intent.ACTION_CALL);
            //設置打給誰操作
            intent.setData(Uri.parse("tel:" + number));
            
            //以上執行完畢將該動作告訴系統
            startActivity(intent);
        }
        
    }
}

 

    以上簡單小程式代碼已經寫完了,趕緊運行試一下吧! 

     總結:今天小編的Android知識點已經分享完了,今天的學習內容不多只是大致理解一下Android程式基本結構,該案例中也運用了內部類的定義,如果不懂內部類操作的學者也可以參照一下小編編寫的內部類學習筆記也許會幫助到你哦!地址:http://www.cnblogs.com/xiaotaojing/p/6069184.html 因為內部類的定義在Android的開發中非常常見也經常使用,如果有某些學者對該篇比較有不懂的或者有疑惑的地方可以給小編留言哦!謝謝

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 因為工作需要在學習bootstrap,之前雖然有一點瞭解,不過一直沒有深入學習,如今有機會和時間去熟悉bootstrap,通過博客記錄我的bootstrap學習之旅,現在開始啦。。(在這裡會記錄我發現的問題和我的解決方法,作為bootstrap新手,所以一開始是發現最簡單的問題,這部分我也會記錄下來 ...
  • 談談vertical-align的text-bottom和text-top ...
  • 學習資料 :http://www.cnblogs.com/wkylin/archive/2011/05/12/2044328.html 元素是文檔結構的基礎,在css裡面,每個元素生成了包含內容的框(box),大家都叫“盒子”。但是不同的元素顯示方式是不同的,有占據一整行的,有水平一個挨著一個的。比... ...
  • 今天學了跨域,迫不及待想跟大家分享!不妥之處希望大家指正。 首先來明確一下“跨域”這個概念。 跨域指的是,到外域去取數據。那什麼是“外域”呢?我們先來瞭解同域。同域指的是,同協議、同功能變數名稱、同埠。如果兩個URL,協議相同,功能變數名稱相同,埠號相同,那麼這兩個URL就屬於同域。那麼外域就是,協議不同,或者 ...
  • 先上代碼: 代碼挺簡單的,但是這一點代碼也有可能達不到預期效果。 一開始,在readWrite()函數中,我用的是註釋掉的那些代碼,沒有用紅色部分代碼,結果點擊“讀寫”按鈕後,還是不可編輯。於是就改成了紅色部分代碼,結果再點擊“讀寫”按鈕就可以編輯了。 總結了一下,當達不到預期效果時,可以使用以下幾 ...
  • 關於列表中checkbox選中,全選設置 以上代碼主要處理 1.在列表中如果選中行則選中這行的checkbox,如果再次點擊則取消選中 2.在列表中包含全選checkbox 下麵我自己加入的一段全選和反選的代碼: ...
  • 一、前言: 有時候,我們需要對一些字元串中的字元進行位置變化處理。如 “2016-11-16” 需要調整為 “16/11/2016”。我們知道有很多方法可以使用,比如split()拆分成數組後在進行拼接,也可以使用正則表達式的分組機制來進行處理。下麵我們就將這種方法進行實例對比: 二、split() ...
  • 第一步:到官網下載第三方包,拷貝到自己的項目中 https://github.com/Maxwin-z/XListView-Android 第二步:xml文件 第三步:java代碼 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...