*



Anda sedang menonton: Cara membuat aplikasi chatting seperti line

Aplikasi pesan merupapan penyimpangan satu aplikasi wajib di install di instrumen Smartphone Android. Kawanan aplikasi berita chat yang dapat ditemukan di playstore, bebermaafkan saya aplikasi yang tertahu seperti WhatsApp, Line, Telegram, KakaoTalk, dan masih banyak lagi.pada postingan kali ini kita ini adalah membuat aplikasi pesan chat sama sebagai WhatsApp ataupun Telegram. Agar mudah karena dipahami, pembuatan aplikasi ini become dibagi menmemanggang bebermaafkan saya bagian sesuai diatas bagian duluan ini berfokus diatas tampilan aplikasi.Tampilan aplikasi di ~ bagian pertama nantinmiliki akan tampak kemudian gambar dibawah :Langsung saja ikuti langkah-langkah berikut :1. Karena Project baru mencapai nama belakang pesan Kilat 2. Untuk beberapa class dan folder such pada gambar.


*

mungkin di using di ~ lukis diatas terdapat 2 class aktivitas yaitu MainActivity, dan TampilPesan, serta terdapat satu class fragmenpen yangi berada di dalam package fregmenpen mencapai nama FragmentChat. Berikut kode dari ketiga class terpanggilan :MainActivity

package com.channelishop.com.pesankilat;import androidx.appcompat.app.AppCompatActivity;import androidx.fragment.app.FragmentManager;import androidx.fragment.app.FragmentTransaction;import android.content.Context;import android.content.Intent;import android.os.Bundle;import android.view.Window;import com.channelishop.com.pesankilat.fragment.FragmentChat;public class Mainaktivitas extends AppCompatkerja private FragmentTransmerencanakan ft; private FragmentManager fm; private FragmentChat fragmentChat; private AppCompatactivity activity; private definisi kertas context;
Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); getSupportActionBar().hide(); setContentView(R.layout.activity_main); context=this; kerja = this; fm = getSupportFragmentManager(); ft = fm.beginTransaction(); BuatFragment(); private void BuatFragment() fragmentChat = new FragmentChat(activity, context); ft.add(R.id.konten, fragmentChat); ft.commit(); public void TampilPesan() Intent i = new Intent(MainActivity.this, TampilPesan.class); startActivity(i); onPause(); TampilPesan
package com.channelishop.com.pesankilat;import androidx.appcompat.app.AppCompatActivity;import android.content.Context;import android.os.Bundle;import android.view.View;import android.view.ViewGroup;import android.view.Window;import android.widget.EditText;import android.widget.LinearLayout;import android.widget.TextView;publik class Tampilberita extends AppCompatactivity private LinearLayout pesan; private konteks context; private LinearLayout send; private EditText text;
Override ide protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); getSupportActionBar().hide(); setContentView(R.layout.activity_tampil_pesan); konteks = this; pesan = findViewById(R.id.pesan); send = findViewById(R.id.send); text = findViewById(R.id.editText); send.setOnClickListener(new View.OnClickListener()
Overrideas public void onClick(View v) Stringai s = text.getText().toString(); CardMyPesan(s); ); Kontent(); private void CardMyPesan(String s) View v = getLayoutInflater().inflate(R.layout.card_pesan_b, null); LinearLayout konten_berita = v.findViewById(R.id.konten_pesan); TextView textView = new TextView(context); ViewGroup.LayoutParams lp = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); textView.setLayoutParams(lp); textView.setText(""+s); textView.setTextSize(14); textView.setTextColor(getResources().getColor(R.color.hitam)); konten_pesan.addView(textView); pesan.addView(v); text.setText(""); private void Kontent() View v = getLayoutInflater().inflate(R.layout.card_pesan_a, null); LinearLayout konten_menodai = v.findViewById(R.id.konten_pesan); TextView textView = new TextView(context); ViewGroup.LayoutParams lp = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); textView.setLayoutParams(lp); textView.setText("selamat datangai !"); textView.setTextSize(14); textView.setTextColor(getResources().getColor(R.color.hitam)); konten_pesan.addView(textView); pesan.addView(v); FragmentChat
package com.channelishop.com.pesankilat.fragment;import android.annotation.SuppressLint;import android.content.Context;import android.os.Build;import android.os.Bundle;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.LinearLayout;import androidx.annotation.RequiresApi;import androidx.appcompat.app.AppCompatActivity;import androidx.fragment.app.Fragment;import com.channelishop.com.pesankilat.MainActivity;import com.channelishop.com.pesankilat.R;
SuppressLint("ValidFragment")public class FragmentChat extends Fragmenpen private AppCompatactivity activity; private konteks context; private LinearLayout isi; private LayoutInflater inf; public FragmentChat(AppCompataktivitas activity, konteks context) this.konteks = context; this.activity = activity;
RequiresApi(api = Build.VERSION_CODES.M) publik View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) View view = inflater.inflate(R.layout.fragment_chat, container, false); isi = view.findViewById(R.id.isi); inf = inflater; for (int i=0;i BuatCard(); return view; private void BuatCard() View v = inf.inflate(R.layout.card_chat, null); isi.addView(v); v.setOnClickListener(new View.OnClickListener()
Override public void onClick(View v) ((MainActivity) getActivity()).TampilPesan(); ); }bien :
Jangan lupa karena mengganti "package com.channelishop.com.pesankilat;" yang berada diatas garis overhead sesuai mencapai package kalian.3. Masukmodernkan 2 drawabel baru menjangkau nama "ic_arrow_back_black.xml" dan "ic_send_black.xml".

*

lukis drawable ini bisa dari mereka untuk sendiri ataupun menggunini adalah asset yanew york telah disediini adalah AndroidStudio. Dibaca Cara Menggunakan Icon Vector Asset bawahan Android Studio, Cara Menggunmenjadi Icon Sendiri di Android Studio.4. Buka colors.xml
yangai berada pada rtape -> valutape -> colors.xml, kemudian isi mencapai kode berikut : #008577 #00574B #D81B60 #0073A0 #8A8A8A #00D423 #E3E3E3 #000000 #FFFFFF #e2ffc7 #869b725. Untuk layout sebagai diatas lukisan dibawah :
*

Adapun simpul dari layout-layout terpanggilan :activity_main.xml
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:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> android:layout_width="match_parent" android:layout_height="wrap_content" android:background="
color/biru" android:gravity="center_vertical" android:orientation="vertical" android:padding="20dp"> android:id="
+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="PesanKilat" android:textColor="
+id/konten" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> activity_tampil_pesan.xml
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" android:background="
color/abu_abu_dua" android:orientation="vertical" tools:context=".TampilPesan"> android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1" android:scrollbars="none"> android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> android:id="
+id/pesan" android:layout_width="match_parent" android:layout_height="fill_parent" android:layout_weight="1" android:orientation="vertical" android:paddingTop="50dp"> android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal"> android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginLeft="5dp" android:layout_marginRight="5dp" android:layout_marginBottom="5dp" android:layout_weight="1" android:background="
android:color/white" android:gravity="center_vertical" android:orientation="vertical" android:padding="10dp"> android:id="
+id/editText" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="
android:color/transparent" android:ems="10" android:hint="Tulis pesan" android:inputType="textPersonName" android:textSize="14sp" /> android:id="
+id/send" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="5dp" android:layout_marginBottom="5dp" android:background="
+id/imageView4" android:layout_width="20dp" android:layout_height="20dp" android:adjustViewBounds="true" android:tint="
drawable/ic_send_black" tools:ignore="VectorDrawableCompat" /> android:layout_width="match_parent" android:layout_height="50dp" android:background="
color/biru" android:gravity="center_vertical" android:orientation="horizontal" android:paddingLeft="20dp" android:paddingRight="20dp"> android:id="
+id/imageView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:adjustViewBounds="true" android:tint="
+id/imageView3" android:layout_width="30dp" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:adjustViewBounds="true" app:srcCompat="
+id/textView6" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:text="namu Kontak" android:textColor="
android:color/white" android:textStyle="bold" /> card_chat.xml
xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:padding="20dp"> android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginBottom="10dp" android:orientation="horizontal"> android:id="
+id/imageView" android:layout_width="50dp" android:layout_height="50dp" android:adjustViewBounds="true" app:srcCompat="
mipmap/ic_launcher" /> android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:orientation="vertical"> android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginBottom="10dp" android:orientation="horizontal"> android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:orientation="vertical"> android:id="
+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="5dp" android:text="nama belakang Kontak" android:textColor="
+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TextView" /> android:layout_width="wrap_content" android:layout_height="match_parent" android:gravity="center_horizontal" android:orientation="vertical"> android:id="
+id/textView5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="10dp" android:text="15:00" android:textColor="
+id/textView4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="
color/hijau" android:paddingLeft="10dp" android:paddingRight="10dp" android:text="9" android:textColor="
android:color/white" /> android:layout_width="match_parent" android:layout_height="0.5dp" android:layout_marginLeft="60dp" android:background="
color/abu_abu" android:orientation="vertical">card_pesan_a.xml
xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:padding="10dp"> android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="30dp" android:background="
android:color/white" android:minWidth="70dp" android:minHeight="30dp" android:orientation="vertical"> android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:padding="10dp" android:visibility="gone"> android:id="
+id/textView8" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0852512161" android:textColor="
android:color/black" android:textSize="12sp" /> android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1" android:minWidth="50dp" android:orientation="horizontal"> android:id="
+id/textView7" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="nama kontak" android:textSize="10sp" /> android:id="
+id/konten_pesan" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:padding="10dp"> android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="right" android:orientation="vertical" android:paddingLeft="10dp" android:paddingRight="10dp" android:paddingBottom="10dp"> android:id="
+id/textView9" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="09:00" android:textColor="
color/waktu" android:textSize="10sp" /> card_pesan_b.xml
xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="right" android:orientation="vertical" android:padding="10dp"> android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="30dp" android:background="
color/hijau_pesan" android:minWidth="70dp" android:minHeight="30dp" android:orientation="vertical"> android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:padding="10dp" android:visibility="gone"> android:id="
+id/textView8" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0852512161" android:textColor="
android:color/black" android:textSize="12sp" /> android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1" android:minWidth="50dp" android:orientation="horizontal"> android:id="
+id/textView7" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="namu kontak" android:textSize="10sp" /> android:id="
+id/konten_pesan" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:padding="10dp"> android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="right" android:orientation="vertical" android:paddingLeft="10dp" android:paddingRight="10dp" android:paddingBottom="10dp"> android:id="
+id/textView9" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="09:00" android:textColor="
color/waktu" android:textSize="10sp" /> fragment_chat.xml
android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> android:layout_width="match_parent" android:layout_height="match_parent" android:scrollbars="none"> android:id="
+id/isi" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" /> 6. Last buka terbuka AndroidManifest.xml
dan tam~ android:windowSoftInputMode="adjustResize" di ~ kerja "TampilPesan" sehingga menmemanggang such berikut : package="com.channelishop.com.pesankilat"> android:allowBackup="true" android:icon="
mipmap/ic_launcher" android:label="
string/app_name" android:roundIcon="


Lihat lainnya: Cara Ganti Password Wifi Di Laptop, 6 Cara Mengganti Password Wifi, Mudah Dan Cepat

mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="
style/AppTheme"> android:windowSoftInputMode="adjustResize"> Jika kita mengkopi paste kode di atas, silahmodernkan sesuaikan package="com.channelishop.com.pesankilat"
mencapai nama package kalian.

lebah : simpul android:windowSoftInputMode="adjustResize" berfungsi untuk menyesuaikan tampilan ketika keypapan muncul.