কম্পিউটার টিউটোরিয়াল

অ্যান্ড্রয়েডে TextView-এ HTML কন্টেন্ট দেখানো


HtmlCompat.fromHtml() ব্যবহার করে HTML রেন্ডার করুন

অ্যান্ড্রয়েডে TextView-এ HTML স্ট্রিং দেখানোর জন্য android.text.Html (ডিপ্রিকেট) বা HtmlCompat (সুপারিশকৃত) ব্যবহার করুন।

কোড উদাহরণ

public class MainActivity extends AppCompatActivity {
    private static final String HTML_TEXT = "<h2>What is Android?</h2>\n" +
        "<p>Android is an <b>open source</b> <i>Linux-based OS</i> for mobile devices.</p>\n" +
        "<p>Developed by the <b>Open Handset Alliance</b> led by Google.</p>\n" +
        "<ul><li>Item 1</li><li>Item 2</li></ul>";
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        TextView tv = findViewById(R.id.htmlTextView);
        
        // API 24+ (Nougat) এ fromHtml(int flags) ওভারলোড
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
            tv.setText(HtmlCompat.fromHtml(HTML_TEXT, HtmlCompat.FROM_HTML_MODE_LEGACY));
        } else {
            tv.setText(HtmlCompat.fromHtml(HTML_TEXT, 0)); // লিগ্যাসি ফ্ল্যাগ
        }
        
        // লিঙ্ক ক্লিকেবল করতে
        tv.setMovementMethod(LinkMovementMethod.getInstance());
    }
}

সাপোর্টেড HTML ট্যাগ

  • <b>, <i>, <u>, <strong>, <em>, <cite>, <dfn>
  • <big>, <small>, <font>, <blockquote>
  • <p>, <br>, <div>
  • <a href="..."> (LinkMovementMethod দরকার)
  • <img src="..."> (ImageGetter দরকার)
  • <ul>, <ol>, <li>

সীমাবদ্ধতা

  • CSS সাপোর্ট নেই (স্টাইলিং সীমিত)।
  • জাভাস্ক্রিপ্ট এক্সিকিউট হয় না।
  • কমপ্লেক্স লেআউটের জন্য WebView ব্যবহার করুন।

আধুনিক বিকল্প: Jetpack Compose-এ AnnotatedString বা Markdown লাইব্রেরি (Markwon) ব্যবহার করুন।


  1. অ্যান্ড্রয়েডে JSON পার্স করার সহজ পদ্ধতি

  2. অ্যান্ড্রয়েডে Toast মেসেজ দেখানোর পদ্ধতি

  3. অ্যান্ড্রয়েডে HTML পার্স করার পদ্ধতি (Jsoup লাইব্রেরি ব্যবহার করে)

  4. Android-এ TextView-এ টেক্সট জাস্টিফাই (Justify) করার পদ্ধতি