आप सबस्क्रिप्ट या सुपरस्क्रिप्ट के साथ एक स्ट्रिंग कैसे प्रिंट कर सकते हैं? क्या आप बाहरी पुस्तकालय के बिना ऐसा कर सकते हैं? मैं चाहता हूं कि यह TextView
एंड्रॉइड में प्रदर्शित हो ।
आप सबस्क्रिप्ट या सुपरस्क्रिप्ट के साथ एक स्ट्रिंग कैसे प्रिंट कर सकते हैं? क्या आप बाहरी पुस्तकालय के बिना ऐसा कर सकते हैं? मैं चाहता हूं कि यह TextView
एंड्रॉइड में प्रदर्शित हो ।
जवाबों:
((TextView)findViewById(R.id.text)).setText(Html.fromHtml("X<sup>2</sup>"));
या
उदाहरण:
equation = (TextView) findViewById(R.id.textView1);
SpannableStringBuilder cs = new SpannableStringBuilder("X3 + X2");
cs.setSpan(new SuperscriptSpan(), 1, 2, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
cs.setSpan(new RelativeSizeSpan(0.75f), 1, 2, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
cs.setSpan(new SuperscriptSpan(), 6, 7, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
cs.setSpan(new RelativeSizeSpan(0.75f), 6, 7, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
equation.setText(cs);
equation.setText(blah+cs);
काम नहीं करता है। हालांकि अलग से काम करता है। उस काम को कैसे प्राप्त करें?
सभी लोगों से पूछते हुए, यदि आप इसे सुपर या सबस्क्रिप्ट बनाने के अलावा छोटा करना चाहते हैं, तो आपको केवल टैग जोड़ने की आवश्यकता है। पूर्व:
"X <sup><small> 2 </small></sup>"
कोड में इस तरह से "\ u00B2" डालें:
textView.setText("X\u00B2");
यदि आप string.xml फ़ाइल से सुपरस्क्रिप्ट को सेट करना चाहते हैं, तो यह कोशिश करें:
स्ट्रिंग संसाधन:
<string name="test_string">X<sup>3</sup></string>
यदि आप सुपरस्क्रिप्ट को छोटा करना चाहते हैं:
<string name="test_string">X<sup><small>3</small></sup></string>
कोड:
textView.setText(Html.fromHtml("Anything you want to put here"+getString(R.string.test_string)));
((TextView)findViewById(R.id.text)).setText(Html.fromHtml("X<sup><small>2</small></sup>"));
(या) स्ट्रिंग संसाधन फ़ाइल से:
<string name="test_string">
<![CDATA[ X<sup><small>2</small></sup> ]]>
</string>
स्वीकृत जवाब अब हटा दिया गया है। तो कृपया इस कोड के टुकड़े पर जाएँ। मुझे यह किसी वेबसाइट से मिला है। मैं नाम भूल गया लेकिन वैसे भी काम करने वाले कोड के इस अच्छे टुकड़े के लिए धन्यवाद।
SpannableString styledString
= new SpannableString("Large\n\n" // index 0 - 5
+ "Bold\n\n" // index 7 - 11
+ "Underlined\n\n" // index 13 - 23
+ "Italic\n\n" // index 25 - 31
+ "Strikethrough\n\n" // index 33 - 46
+ "Colored\n\n" // index 48 - 55
+ "Highlighted\n\n" // index 57 - 68
+ "K Superscript\n\n" // "Superscript" index 72 - 83
+ "K Subscript\n\n" // "Subscript" index 87 - 96
+ "Url\n\n" // index 98 - 101
+ "Clickable\n\n"); // index 103 - 112
// make the text twice as large
styledString.setSpan(new RelativeSizeSpan(2f), 0, 5, 0);
// make text bold
styledString.setSpan(new StyleSpan(Typeface.BOLD), 7, 11, 0);
// underline text
styledString.setSpan(new UnderlineSpan(), 13, 23, 0);
// make text italic
styledString.setSpan(new StyleSpan(Typeface.ITALIC), 25, 31, 0);
styledString.setSpan(new StrikethroughSpan(), 33, 46, 0);
// change text color
styledString.setSpan(new ForegroundColorSpan(Color.GREEN), 48, 55, 0);
// highlight text
styledString.setSpan(new BackgroundColorSpan(Color.CYAN), 57, 68, 0);
// superscript
styledString.setSpan(new SuperscriptSpan(), 72, 83, 0);
// make the superscript text smaller
styledString.setSpan(new RelativeSizeSpan(0.5f), 72, 83, 0);
// subscript
styledString.setSpan(new SubscriptSpan(), 87, 96, 0);
// make the subscript text smaller
styledString.setSpan(new RelativeSizeSpan(0.5f), 87, 96, 0);
// url
styledString.setSpan(new URLSpan("http://www.google.com"), 98, 101, 0);
// clickable text
ClickableSpan clickableSpan = new ClickableSpan() {
@Override
public void onClick(View widget) {
// We display a Toast. You could do anything you want here.
Toast.makeText(MainActivity.this, "Clicked", Toast.LENGTH_SHORT).show();
}
};
styledString.setSpan(clickableSpan, 103, 112, 0);
// Give the styled string to a TextView
spantext = (TextView) findViewById(R.id.spantext);
// this step is mandated for the url and clickable styles.
spantext.setMovementMethod(LinkMovementMethod.getInstance());
// make it neat
spantext.setGravity(Gravity.CENTER);
spantext.setBackgroundColor(Color.WHITE);
spantext.setText(styledString);
नोट: हमेशा android:textAllCaps="false"
अपने स्पांटेक्स्ट के रखो।
HTML.fromHTML (स्ट्रिंग) को एपीआई 24 के रूप में चित्रित किया गया था। वे इसके बजाय एक का उपयोग करने के लिए कहते हैं, जो एक पैरामीटर के रूप में झंडे का समर्थन करता है। तो स्वीकार किए जाते हैं जवाब से दूर जाने के लिए:
TextView textView = ((TextView)findViewById(R.id.text));
textView.setText(Html.fromHtml("X<sup>2</sup>", Html.FROM_HTML_MODE_LEGACY));
और यदि आप ऐसा कोड चाहते हैं जो पूर्व 24 एपीआई के रूप में अच्छी तरह से समझता है:
TextView textView = ((TextView)findViewById(R.id.text));
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) {
textView.setText(Html.fromHtml("X<sup>2</sup>", Html.FROM_HTML_MODE_LEGACY));
} else {
textView.setText(Html.fromHtml("X<sup>2</sup>"));
}
यह उत्तर इस से लिया गया था: https://stackoverflow.com/a/37905107/4998704
झंडे और अन्य दस्तावेज यहां देखे जा सकते हैं: https://developer.android.com/reference/android/text/Html.html
उन्हें यूनिकोड वर्ण कहा जाता है, और Android TextView
उनका समर्थन करता है। इस विकी से प्राप्त सुपर / उप-स्क्रिप्ट की प्रतिलिपि बनाएँ: https://en.wikipedia.org/wiki/List_of_Unicode_characters#Superscripts_and_Subscripts
"A" के लिए यह "" "कॉपी और पेस्ट करें
आप इनमें से किसी भी Superscripts और Subscripts को अपने Android String संसाधन में कॉपी और पेस्ट कर सकते हैं।
उदाहरण:
<string name="word_with_superscript" translatable="false">Trademark ᵀᴹ</string>
परिणाम: ट्रेडमार्क ᵀᴹ
सुपरस्क्रिप्ट और सदस्यता पत्र
सुपरस्क्रिप्ट स्क्रिप्ट ᴬ ᴬ ᴬ ᴬ ᴬ ᴬ ᴬ ᴬ ᴬ ᴬ ᴬ ᴬ ᴬ ᴬ ᴬ ᴬ ᴬ ᴬ
सुपरस्क्रिप्ट माइनसक्यूल ᵃ c c c c c c c c c c c c c c c c c c c c c c c
सदस्यता माइनसक्यूल ₐ ule ule ule ule ule ule ule ule ule ule ule ule ule ule ule ule
yourTextView.setText(Html.fromHtml("X<sup>2</sup>"));
This will be the result in you yourTextView =
एक्स 2