<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>data binding kullanımı - hknsoft</title>
	<atom:link href="https://hknsoft.com/etiket/data-binding-kullanimi/feed/" rel="self" type="application/rss+xml" />
	<link></link>
	<description>Android, Yazılım, Script</description>
	<lastBuildDate>Fri, 24 Dec 2021 00:01:01 +0000</lastBuildDate>
	<language>tr</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://hknsoft.com/wp-content/uploads/2020/05/cropped-icon-hknsoft-150x150.png</url>
	<title>data binding kullanımı - hknsoft</title>
	<link></link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Android Data Binding Kullanımı</title>
		<link>https://hknsoft.com/android-data-binding-kullanimi/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Fri, 24 Dec 2021 00:00:58 +0000</pubDate>
				<category><![CDATA[Android Studio]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[android data binding]]></category>
		<category><![CDATA[android data binding kullanımı]]></category>
		<category><![CDATA[android java data binding]]></category>
		<category><![CDATA[android studio]]></category>
		<category><![CDATA[android studio data binding kullanımı]]></category>
		<category><![CDATA[data binding]]></category>
		<category><![CDATA[data binding kullanımı]]></category>
		<guid isPermaLink="false">https://hknsoft.com/?p=1146</guid>

					<description><![CDATA[<p>Büyük projelerde onlarca itemi findViewById() ile teker teker tanımlamak çok uzun ve gereksiz bir işlem. Data Binding ile daha az kod yazarak aynı işi yapabiliyoruz. <a class="mh-excerpt-more" href="https://hknsoft.com/android-data-binding-kullanimi/" title="Android Data Binding Kullanımı">[...]</a></p>
<p>The post <a href="https://hknsoft.com/android-data-binding-kullanimi/">Android Data Binding Kullanımı</a> appeared first on <a href="https://hknsoft.com">hknsoft</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="has-black-color has-text-color wp-block-paragraph">Büyük projelerde onlarca itemi <strong>findViewById</strong>() ile teker teker tanımlamak <strong>çok uzun ve gereksiz</strong> bir işlem. <a href="https://developer.android.com/topic/libraries/data-binding#java" target="_blank" rel="noreferrer noopener nofollow"><strong>Data Binding</strong></a> ile <strong>daha az kod yazarak</strong> aynı işi yapabiliyoruz.</p>



<p class="wp-block-paragraph">Bu yazıda findViewById() kullanmadan Data Binding ile nesnelere ulaşmayı anlatacağım.</p>



<h2 class="wp-block-heading">Projede Aktif Etme</h2>



<p class="wp-block-paragraph"><strong>build.gradle -> android</strong> içerisine aşağıdaki kodu ekleyerek <strong>aktif ediyoruz.</strong></p>



<div class="wp-block-urvanov-syntax-highlighter-code-block"><pre class="urvanov-syntax-highlighter-plain-tag">android {
    ...
    dataBinding {
        enabled = true
    }
}</pre></div>



<h2 class="wp-block-heading">Data Binding Kullanımı</h2>



<h2 class="wp-block-heading">XML</h2>



<div class="wp-block-urvanov-syntax-highlighter-code-block"><pre class="urvanov-syntax-highlighter-plain-tag">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;layout 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"&gt;

    &lt;LinearLayout
        android:id="@+id/example_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:orientation="vertical"
        tools:context=".MainActivity"&gt;

        &lt;TextView
            android:id="@+id/hello_world_text"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="Hello World" /&gt;
    &lt;/LinearLayout&gt;
&lt;/layout&gt;</pre></div>



<p class="wp-block-paragraph">Data Binding kullanabilmek için xml dosyasına <strong>&lt;layout></strong> tagı ile başlanması gerek. Yukarıdaki gibi LinearLayout veya RelativeLayout ile değil &lt;layout> tagı ile başlıyoruz. Tabi namespaceleri de bu taga taşıyoruz.</p>



<h2 class="wp-block-heading">JAVA</h2>



<p class="wp-block-paragraph">Java kısmında <strong>setContentView(R.layout.activity_main);</strong> kodu yerine aşağıdaki kodu kullanıyoruz.</p>



<div class="wp-block-urvanov-syntax-highlighter-code-block"><pre class="urvanov-syntax-highlighter-plain-tag">ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main);</pre></div>



<p class="has-black-color has-pale-pink-background-color has-text-color has-background wp-block-paragraph"><strong>Not:</strong> Her activity için farklı bir class <strong>otomatik olarak oluşturulur.</strong> MainActivity için <strong>ActivityMainBinding</strong> adında bir class oluşturmuş. Örneğin <strong>HomeActivity</strong> için <strong>ActivityHomeBinding</strong> adında bir class oluşturacaktır. </p>



<p class="wp-block-paragraph">Artık <strong>binding</strong> nesnesiyle xml dosyasındaki elemanlara kolay bir şekilde erişebileceğiz.</p>



<div class="wp-block-urvanov-syntax-highlighter-code-block"><pre class="urvanov-syntax-highlighter-plain-tag">package com.hknsoft.databinding;

import androidx.appcompat.app.AppCompatActivity;
import androidx.databinding.DataBindingUtil;

import android.os.Bundle;
import android.view.View;

import com.hknsoft.databinding.databinding.ActivityMainBinding;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main);

        binding.helloWorldText.setText("Deneme123");

        binding.exampleLayout.setVisibility(View.VISIBLE);
    }
}</pre></div>



<p class="wp-block-paragraph">İşte bu kadar kolay. Data Binding ile onlarca koddan kurtulmuş olduk.</p>



<p class="wp-block-paragraph">Android Studio ile ilgili yazılar için <a href="https://hknsoft.com/kategori/android-studio/" target="_blank" rel="noreferrer noopener"><strong>tıklayabilirsiniz.</strong></a></p>
<p>The post <a href="https://hknsoft.com/android-data-binding-kullanimi/">Android Data Binding Kullanımı</a> appeared first on <a href="https://hknsoft.com">hknsoft</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
