1. 程式人生 > >Android開發-資料繫結-DataBinding-AndroidStudio(一)初識DataBinding

Android開發-資料繫結-DataBinding-AndroidStudio(一)初識DataBinding

效果上沒有什麼特別的,看不出來什麼~~

看看準備工作和原始碼:

MainActivity.java:

package com.iwanghang.databinding;

import android.databinding.DataBindingUtil;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

import com.iwanghang.databinding.databinding.ActivityMainBinding;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        //setContentView(R.layout.activity_main);
        /**
         * 用DataBinding方式載入layout
         */
        ActivityMainBinding binding = DataBindingUtil.setContentView(this,R.layout.activity_main);

        User user = new User();
        user.setName("使用者名稱");
        user.setNickName("暱稱");
        user.setEmail("
[email protected]
"); user.setVip(true); binding.setUser(user); } }
User.java:
package com.iwanghang.databinding;

public class User {
    private String name;
    private String nickName;
    private String email;
    private boolean vip;

    public boolean isVip() {
        return vip;
    }

    public void setVip(boolean vip) {
        this.vip = vip;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }
}
activity_main.xml:
<?xml version="1.0" encoding="utf-8"?>
<!--改造後的layout-->
<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">
    <!--資料模組-->
    <data>
        <variable
            name="user"
            type="com.iwanghang.databinding.User"/>
    </data>
    <!--樣式模組-->
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:gravity="center"
        tools:context="com.iwanghang.databingding.MainActivity">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"

            android:text="@{ user.name }" />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@{ user.nickName }" />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@{ user.email }" />
        <TextView
            android:textColor="@{ user.vip ? 0xffff0000 : 0xff0000}"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="VIP" />
    </LinearLayout>
</layout>


轉載請註明出處:http://blog.csdn.net/iwanghang/article/details/53188034


歡迎移動開發愛好者交流
瀋陽或周邊城市公司有意開發Android,請與我聯絡
聯絡方式

微信:iwanghang
QQ:413711276
郵箱:i[email protected]




相關推薦

Android開發-資料-DataBinding-AndroidStudio()初識DataBinding

效果上沒有什麼特別的,看不出來什麼~~ 看看準備工作和原始碼: MainActivity.java: package com.iwanghang.databinding; import an

Android開發-資料-DataBinding-AndroidStudio(三)多組資料

多組資料繫結方式,使用include~~ MainActivity.java: package com.iwanghang.databinding; import android.databinding.DataBindingUtil; import android

Android官方資料框架DataBinding()

從這篇部落格開始,我們就來了解一下android最新給我們帶來的資料繫結框架——Data Binding Library。資料繫結框架給我們帶來了更大的方便性,以前我們可能需要在Activity裡寫很多的findViewById,煩人的程式碼也增加了我們程式

Android官方資料框架DataBinding

轉自:http://blog.csdn.net/qibin0506/article/details/47393725 今天來了解一下android最新給我們帶來的資料繫結框架——Data Binding Library。資料繫結框架給我們帶來了更大的方便性,以前我們可能

Android官方資料框架DataBinding用法詳解+附帶DEMO原始碼

今天來了解一下Android最新給我們帶來的資料繫結框架——Data Binding Library。資料繫結框架給我們帶來了更大的方便性,以前我們可能需要在Activity裡寫很多的findViewById,煩人的程式碼也增加了我們程式碼的耦合性,現在我們馬上就

【.Net碼農】DataGrid 資料使用小結

  做過ASP.NET開發的朋友都知道,ASP.NET提供了強大的列表資料控制元件,從ASP.NET1.1 時代的DataGrid,到ASP.NET2.0時代的GridView,再到ASP.NET3.5時代的ListView,功能越 來越強大,使用起來也非常的靈活.在Silverlight2中,同樣提供了一

Android 官方資料框架 Data Binding 簡單使用

參考資料 配置 Data Binding 環境 在需要使用 Data Binding 的 module 里加上如下配置: android { .... dataBinding { enabled = t

android資料框架DataBinding使用

在介紹DataBinding之前,肯定要先學會搭建使用它的環境。鑑於是2015年釋出的,現在大家androidstudio的版本估計都在1.5以上了,就在1.5的版本上搭建和介紹吧,1.5之前的大家可以在網上搜索,因為我看網上大多數是介紹的1.3的使用方法,還沒有很多對於1

Android資料框架DataBinding,堪稱解決介面邏輯的黑科技

去年穀歌 I/O大會上介紹了一個非常厲害的新框架DataBinding, 資料繫結框架給我們帶來了很大的方便,以前我們可能需要在每個Activity裡寫很多的findViewById,不僅麻煩,還增加了程式碼的耦合性,如果我們使用DataBinding,就可以拋棄那麼

Android資料框架DataBinding用法

    2)繫結Variable      雖然在佈局檔案中對應上了,但是值是怎麼傳進去的呢?這就是我們要將的Activity中的那兩行程式碼了,它把實體類和佈局檔案進行了繫結。修改MainActivity中的onCreate,用 DatabindingUtil.setContentView() 來替換掉 s

android MVVM DataBinding 資料框架 注意問題

英文官方參考資料(牆):https://developer.android.com/topic/libraries/data-binding/index.html 博文參考資料1(較新,推薦):http://blog.csdn.net/guyuealian/article/

Vaadin Web應用開發教程 42 資料-Property介面

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Android Data Binding(資料)使用者指南

轉自:https://www.jianshu.com/p/b1df61a4df77 1. 介紹 這篇文章介紹瞭如何使用Data Binding庫來寫宣告的layouts檔案,並且用最少的程式碼來繫結你的app邏輯和layouts檔案。Data Binding庫不僅靈活而且廣泛相容-

Vue() 資料和第一個Vue應用

學習 Vue.js 最有效的方法是檢視官網文件 資料繫結和第一個Vue應用 先從一段簡單的 HTML 程式碼開始,感受 Vue.js 最核心的功能。 <!DOCTYPE html> <html lang="en"> <head> <meta c

前端開發之vue之資料

  2.1. 什麼是雙向繫結? Vue框架很核心的功能就是雙向的資料繫結。 雙向是指:HTML標籤資料 繫結到 Vue物件,另外反方向資料也是繫結的。通俗點說就是,Vue物件的改變會直接影響到HTML的標籤的變化,而且標籤的變化也會反過來影響Vue物件的屬性的變化。 這樣一來

步教你實現安卓mvvm架構,雙向資料

google 2015年9月推出了mvvm架構,實現了在xml上設定雙向資料繫結,類似js。 開發步驟: 1   首先要先在build.gradle內新增 dataBinding { enabled true }   2.  建立一個Model

步教你實現安卓mvvm架構,雙向資料(二)

上文講了普通介面的雙向資料繫結,本文講一下recyclerview的雙向資料繫結,整個工程只要寫一個adapter就夠了,不用像以前一個recyclerview寫一個adapter了,節省了至少80%的程式碼,什麼第三方庫都不需要了。強大的工具! 1.   建立一個通用

詳解 vue 雙向資料的原理,並實現組雙向資料

1:vue 雙向資料繫結的原理: Object.defineProperty是ES5新增的一個API,其作用是給物件的屬性增加更多的控制Object.defineProperty(obj, prop, descriptor)引數 obj: 需要定義屬性的物件(目標物件)prop: 需被定義或修改的屬性名(物

Android應用開發-資料儲存和介面展現()

常見佈局 相對佈局(RelativeLayout)   相對佈局下控制元件預設位置都是左上角(左對齊、頂部對齊父元素),控制元件之間可以重疊   可以相對於父元素上下左右對齊,相對於父元素水平居中、豎直居中、水平豎直同時居中 android:layout_alignParentRi

Angular.js基本概念和用法--(雙向資料

這個雙向資料繫結指的是從資料模型到檢視,從檢視到資料模型之間的雙向繫結。前面介紹過AngularJS是一個MVC框架,我們在操作的時候主要是通過控制器進行操作的,讓控制器去修改資料模型,然後資料模型的變更會反映到檢視上。內容簡介1.最簡單的例子2.取值表示式與ng-bind指