Android Tutorial

Software Setup and Configuration

Android Studio

File Structure

Components

Core Topics

Layout

View

Button

Intent and Intent Filters

Toast

RecyclerView

Fragments

Adapters

Other UI Component

Image Loading Libraries

Date and Time

Material Design

Bars

Working with Google Maps

Chart

Animation

Database

Advance Android

Jetpack

Architecture

App Publish

App Monetization

TextView widget in Android using Java with Examples

TextView is one of the most basic and commonly used widgets in Android. It's primarily used for displaying read-only text to the user. Let's see how you can use the TextView widget in Android using Java:

1. XML Layout:

Declare your TextView in an XML layout file.

activity_main.xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:gravity="center">

    <TextView
        android:id="@+id/myTextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello, Java!" />

</LinearLayout>

2. Java Code:

Reference and manipulate the TextView in your Java activity:

MainActivity.java:

import android.os.Bundle;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    private TextView myTextView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        myTextView = findViewById(R.id.myTextView);

        // Modify the text
        myTextView.setText("Hello from Java code!");
    }
}

Example: Changing Text Style Programmatically:

You can also change various properties of the TextView programmatically:

// Change text color
myTextView.setTextColor(Color.RED);

// Change text size (specified in SP)
myTextView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 20);

// Apply bold text style
myTextView.setTypeface(null, Typeface.BOLD);

These are just some basic usages of TextView in Android using Java. Remember, TextView has many other properties that you can set either via XML attributes or programmatically in your Java code to customize its appearance and behavior as per your needs.

  1. Creating TextView in Android using Java example:

    • Description: The fundamental example of creating a TextView in Android using Java.
    • Example Code (Java):
      import android.os.Bundle;
      import android.widget.TextView;
      import androidx.appcompat.app.AppCompatActivity;
      
      public class MainActivity extends AppCompatActivity {
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
      
              TextView myTextView = new TextView(this);
              myTextView.setText("Hello, TextView!");
              // Add myTextView to your layout
          }
      }
      
  2. Styling TextView in Android with Java:

    • Description: Demonstrates how to apply styles to a TextView in Android using Java for visual customization.
    • Example Code (Java):
      import android.os.Bundle;
      import android.widget.TextView;
      import androidx.appcompat.app.AppCompatActivity;
      
      public class MainActivity extends AppCompatActivity {
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
      
              TextView styledTextView = new TextView(this, null, R.style.MyTextStyle);
              styledTextView.setText("Styled TextView");
              // Add styledTextView to your layout
          }
      }
      
  3. Handling text formatting in Java with TextView:

    • Description: Covers text formatting options available in TextView using Java.
    • Example Code (Java):
      import android.os.Bundle;
      import android.text.SpannableString;
      import android.text.style.StyleSpan;
      import android.widget.TextView;
      import androidx.appcompat.app.AppCompatActivity;
      
      public class MainActivity extends AppCompatActivity {
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
      
              SpannableString formattedText = new SpannableString("Bold and Italic Text");
              formattedText.setSpan(new StyleSpan(android.graphics.Typeface.BOLD_ITALIC), 0, 4, 0);
      
              TextView formattedTextView = new TextView(this);
              formattedTextView.setText(formattedText);
              // Add formattedTextView to your layout
          }
      }
      
  4. Clickable TextView in Android using Java:

    • Description: Shows how to make a TextView clickable in Android using Java.
    • Example Code (Java):
      import android.content.Intent;
      import android.net.Uri;
      import android.os.Bundle;
      import android.view.View;
      import android.widget.TextView;
      import androidx.appcompat.app.AppCompatActivity;
      
      public class MainActivity extends AppCompatActivity {
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
      
              TextView clickableTextView = new TextView(this);
              clickableTextView.setText("Click me!");
              clickableTextView.setOnClickListener(new View.OnClickListener() {
                  @Override
                  public void onClick(View v) {
                      Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.example.com"));
                      startActivity(intent);
                  }
              });
              // Add clickableTextView to your layout
          }
      }
      
  5. TextView with different font styles in Java:

    • Description: Demonstrates applying different font styles to a TextView using Java.
    • Example Code (Java):
      import android.os.Bundle;
      import android.graphics.Typeface;
      import android.widget.TextView;
      import androidx.appcompat.app.AppCompatActivity;
      
      public class MainActivity extends AppCompatActivity {
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
      
              TextView styledTextView = new TextView(this);
              styledTextView.setText("Different Font Styles");
              styledTextView.setTypeface(null, Typeface.BOLD_ITALIC);
              // Add styledTextView to your layout
          }
      }
      
  6. Android TextView with multiple languages using Java:

    • Description: Displays text in multiple languages using TextView in Android using Java.
    • Example Code (Java):
      import android.os.Bundle;
      import android.widget.TextView;
      import androidx.appcompat.app.AppCompatActivity;
      
      public class MainActivity extends AppCompatActivity {
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
      
              TextView multilingualTextView = new TextView(this);
              multilingualTextView.setText("Hello, ���, ����ˤ���");
              // Add multilingualTextView to your layout
          }
      }
      
  7. Dynamic text updates in Java with TextView:

    • Description: Demonstrates updating a TextView dynamically based on application logic.
    • Example Code (Java):
      import android.os.Bundle;
      import android.widget.TextView;
      import androidx.appcompat.app.AppCompatActivity;
      
      public class MainActivity extends AppCompatActivity {
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
      
              String dynamicText = "Dynamic Text";
              TextView dynamicTextView = new TextView(this);
              dynamicTextView.setText(dynamicText);
              // Add dynamicTextView to your layout
          }
      }
      
  8. Accessibility features for TextView in Android using Java:

    • Description: Discusses accessibility features and considerations when using TextView in Android using Java.
    • Example Code (XML):
      <!-- Provide content descriptions and other accessibility attributes -->
      
  9. Android TextView with HTML content using Java:

    • Description: Shows how to display HTML content in TextView using Java.
    • Example Code (Java):
      import android.os.Bundle;
      import android.text.Html;
      import android.widget.TextView;
      import androidx.appcompat.app.AppCompatActivity;
      
      public class MainActivity extends AppCompatActivity {
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
      
              String htmlContent = "<b>HTML</b> <i>Content</i>";
              TextView htmlTextView = new TextView(this);
              htmlTextView.setText(Html.fromHtml(htmlContent, Html.FROM_HTML_MODE_COMPACT));
              // Add htmlTextView to your layout
          }
      }
      
  10. TextView and state management in Android using Java:

    • Description: Explores how to manage state in TextView using Java.
    • Example Code (Java):
      import android.os.Bundle;
      import android.widget.TextView;
      import androidx.appcompat.app.AppCompatActivity;
      
      public class MainActivity extends AppCompatActivity {
          private TextView statefulTextView;
      
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
      
              statefulTextView = findViewById(R.id.statefulTextView);
              statefulTextView.setText("Initial State");
              // Add statefulTextView to your layout
          }
      
          // Update text dynamically
          private void updateTextDynamically(String newText) {
              statefulTextView.setText(newText);
          }
      }
      
  11. Customizing TextView appearance in Android using Java:

    • Description: Guides on customizing the appearance of TextView for a cohesive design.
    • Example Code (XML):
      <!-- Apply styles and themes to TextView -->
      
  12. TextView with drawable in Android using Java:

    • Description: Shows how to add a drawable to a TextView in Android using Java.
    • Example Code (Java):
      import android.os.Bundle;
      import android.widget.TextView;
      import androidx.appcompat.app.AppCompatActivity;
      
      public class MainActivity extends AppCompatActivity {
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
      
              // Assuming you have an image resource named "ic_launcher_foreground"
              Drawable drawable = getResources().getDrawable(R.drawable.ic_launcher_foreground);
              TextView drawableTextView = new TextView(this);
              drawableTextView.setText("TextView with Drawable");
              drawableTextView.setCompoundDrawablesWithIntrinsicBounds(drawable, null, null, null);
              // Add drawableTextView to your layout
          }
      }
      
  13. TextView and spannable text in Android using Java:

    • Description: Introduces spannable text for rich text formatting in TextView using Java.
    • Example Code (Java):
      import android.os.Bundle;
      import android.text.Spannable;
      import android.text.SpannableString;
      import android.text.style.ForegroundColorSpan;
      import android.widget.TextView;
      import androidx.core.content.ContextCompat;
      import androidx.appcompat.app.AppCompatActivity;
      
      public class MainActivity extends AppCompatActivity {
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
      
              SpannableString spannableText = new SpannableString("Colored Text");
              spannableText.setSpan(new ForegroundColorSpan(ContextCompat.getColor(this, R.color.colorAccent)),
                  0, 6, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
      
              TextView spannableTextView = new TextView(this);
              spannableTextView.setText(spannableText);
              // Add spannableTextView to your layout
          }
      }