0

I'm trying to read a different .txt file (in a raw folder) in a second activity TextView depending on what button is pressed in MainActivity (the previous activity), but it doesn't work. I'm using the .putextras method and here is my code of the MainActivity:

    ImageButton but1=(ImageButton) findViewById(R.id.imageButton2);
    but1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent int1=new Intent(MainActivity.this,SecondActivity.class);
            int1.putExtra("Thistext", "textnumberone");
            startActivity(int1);


            finish();



        }
    });

    ImageButton but2(ImageButton) findViewById(R.id.imageButton3);
    but2.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent int2=new Intent(MainActivity.this,SecondActivity.class);
            int2.putExtra("Thistext", "textnumbertwo");
            startActivity(int2);


            finish();



        }
    });

Here is my code of the SecondActivity with the Bundle..

    Bundle extradata = getIntent().getExtras();


    TextView tv = (TextView)findViewById(R.id.firsttextView);
    vitautori.setText(extradata.getString("Thistext"));

    if (extradata.equals("textnumberone")) {

        String texttxt = "";
        StringBuffer sbuffer = new StringBuffer();
        InputStream is = this.getResources().openRawResource(R.raw.file);
        BufferedReader reader = new BufferedReader(new InputStreamReader(is));

        try {

            while ((texttxt = reader.readLine()) !=null){
                sbuffer.append(texttxt + "n");

            }

            tv.setText(sbuffer);
            is.close();


        }catch(Exception e) {
            e.printStackTrace();
        }
    }

    }
}
Vishal Chhodwani
  • 2,567
  • 5
  • 27
  • 40
onecoin
  • 3
  • 2

2 Answers2

0

When creating the Intent (both places, of course), I suggest you try to set the type to text:

int1.setType("text/plain");

See if this helps.

yakobom
  • 2,681
  • 1
  • 25
  • 33
0

You are currently comparing the Bundle data to a string in

if (extradata.equals("textnumberone"))

This will not work, you have to extract the String data first. Try this:

Bundle extradata = getIntent().getExtras();
String textString = extradata.getString("Thistext");
if (textString.equals("textnumberone")) {

One other thing: You set the String from the Bundle to a (I suppose) TextView in

vitautori.setText(extradata.getString("Thistext"));

but I don't see the initialization of vitautori anywhere. So make sure the it is initialized or this will crash.

Bmuig
  • 1,059
  • 7
  • 12