简体   繁体   中英

How to display several paragraphs of text in android studio

In the app I'm building, I'm hoping to have several different guides / tutorials that will each contain several paragraphs and hopefully pictures in them. Right now the only thing I would know to do is to have all of the different texts written out long form in my strings resource file. I would then need to have separate layouts and fragments for each tutorial.

Is there an easier way? Can I separate my strings resource file at least so that I don't have that one file completely bogged down? Could I maybe import the text from a separate file?

Yes, you can. you need to set text programmatically. You need only one layout for all of these same type information page.

Let's say you have

<TextView
    android:id="@+id/text_view_id"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:text="@string/hello" />

You can get that text view from java activity like below and set the text you want..

 public class MainActivity extends Activity {

    protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_main);
         final TextView helloTextView = (TextView) findViewById(R.id.text_view_id);
         helloTextView.setText(R.string.user_greeting);
     }
 }

you can do this setText process by adding a switch, if or any conditional checking process like below

switch(expression) {
   case value :
      helloTextView.setText(R.string.firstPageText);
      break;

   case value :
      helloTextView.setText(R.string.secondPageText);
      break; // optional

   // You can have any number of case statements.
   helloTextView.setText(R.string.defaultText);
      // Statements
}

PS: I think you can use different text style while you creating resource text. You can follow this https://www.myandroidsolutions.com/2017/09/29/android-html-textview/#.W9pu1mgzaUk for it.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM