Giới thiệu
Ví dụ này minh họa cách kiểm tra xem tiêu đề (title) của Action Bar có bị cắt ngắn do không đủ không gian hiển thị hay không bằng phương thức isTitleTruncated().
Các bước thực hiện
Bước 1: Tạo dự án mới
Mở Android Studio, chọn File → New Project.
Bước 2: Thiết kế giao diện (res/layout/activity_main.xml)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
xmlns:app="https://schemas.android.com/apk/res-auto"
xmlns:tools="https://schemas.android.com/tools"
android:layout_width="match_parent"
android:gravity="center"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:id="@+id/text"
android:textSize="30sp"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
Bước 3: Viết logic (src/MainActivity.java)
package com.example.myapplication;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.RequiresApi;
import android.support.v7.app.AppCompatActivity;
import android.view.MenuItem;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
TextView textView;
@RequiresApi(api = Build.VERSION_CODES.N)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = findViewById(R.id.text);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setTitle("Home");
getSupportActionBar().setSubtitle("sairam");
// Kiểm tra title có bị truncate không
textView.setText("Title bị cắt ngắn: " + getSupportActionBar().isTitleTruncated());
}
@Override
public boolean onOptionsItemSelected(MenuItem menuItem) {
if (menuItem.getItemId() == android.R.id.home) {
finish();
}
return super.onOptionsItemSelected(menuItem);
}
}
Phương thức isTitleTruncated() trả về true nếu tiêu đề quá dài và bị cắt ngắn (hiển thị dấu ba chấm ...), false nếu hiển thị đầy đủ.
Chạy ứng dụng
Chạy ứng dụng. Thử đặt tiêu đề rất dài để thấy kết quả true.
