-2

这是我的代码:

package androboy.unsurkimia;

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.ViewGroup.LayoutParams;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ScrollView;
import android.widget.TextView;

public class Main5Activity extends Activity {

LinearLayout vert;
String data;
ScrollView sv;
FileInputStream fis = null;
BufferedReader freader = null;
TextView tv;
ImageView iv;
Integer gambar;
Intent intent;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    //setContentView(R.layout.activity_main5);

    sv = new ScrollView(this);
    sv.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT));
    vert = new LinearLayout(this);
    vert.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
    vert.setOrientation(LinearLayout.VERTICAL);
    sv.addView(vert);

    intent = new Intent();
    tv = new TextView(this);
    iv = new ImageView(this);
    data = getIntent().getExtras().getString("data");

    try
    {
        fis = openFileInput("kimia.txt");

        freader = new BufferedReader(new InputStreamReader(fis));
        String baris = "";
        while((baris =freader.readLine()) != null)
        {
            String u[]=baris.split("#");
            if(u[0].equalsIgnoreCase(data))
            {
                tv.setText(" Simbol : "+u[0]+"\n Nama Unsur : "+u[1]+"\n Kegunaan : "+u[2]+"\n Jenis : "+u[3]+"\n Bahaya : "+u[4]+"\n Gambar bok : "+u[5]);
                gambar = Integer.parseInt(u[5]);
                iv.setImageResource(gambar);
            }
        }
        fis.close();
    }catch (Exception e) {
        // TODO: handle exception
    }
    vert.addView(tv);
    vert.addView(iv);
    this.setContentView(sv);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main5, menu);
    return true;
}

}

这是 kimia.txt 文件:

H#Hidrogen#Sebagai bahan hidrogenasi#non logam#Penyalahgunaan bom hidrogen dan meledaknya gas hidrogen yang dikarenakan sifat hidrogen mudah terbakar dan meledak#R.drawable.h1
Li#Litium#Litium digunakan sebagai bahan campuran logam, sintesis senyawa organik dan aplikasi nuklir, bahan anoda pada baterai#Logam Alkali#Lithium menyebabkan luka bakar yang serius, terutama ketika kontak dengan kulit lembab#R.drawable.h2
Na#Natrium#Logam ini dapat di gunakan untuk memperbaiki struktur beberapa campuran logam, dan untuk memurnikan logam cair#Logam Alkali#Konsumsi sejumlah besar natrium dapat menyebabkan tekanan darah tinggi#R.drawable.h3
K#Kalium#Digunakan untuk pupuk#Logam Alkali#Radiasi dari kalium tidak terlalu berbahaya#R.drawable.h4
Rb#Rubidium#Digunakan untuk batery super tipis, sebagai bahan bakar mesin ion untuk pesawat antariksa#Logam Alkali#Apabila bereaksi dengan air dapat menyebabkan kebakaran#R.drawable.h5
Cs#Sesium#Sebagai katalis di hydrogenasi senyawa-senyawa tertentu#Logam Alkali#Unsur ini sedikit beracun  karena merupakan bahan berbahaya sebagai logam dan radioisotop yang menyajikan risiko kesehatan yang tinggi dalam kasus kebocoran radiasi#R.drawable.h6
Fr#Fransium#Digunakan untuk menentukan kadar Aktinum, digunakan untuk mempelajari organ tubuh tikus#R.drawable.h7
Be#Berilium#Berilium juga digunakan sebagai alloying agent dalam produksi tembaga berilium, yang banyak digunakan untuk per, kontak listrik, elektroda las dan alat-alat lainnya yang didesain untuk tidak memancarkan percikan api#Logam Alkali Tanah#Berilium dan garam-garamnya sangat beracun dan harus ditangani secara sangat hati-hati. R.drawable.h8
Mg#Magnesium#Sebagai bahan konstruksi pesawat dan missile, Magnesite digunakan untuk refractory, sebagai batu bata dan lapisan di tungku-tungku pemanas#Logam Alkali Tanah#Kebakaran dapat dengan mudah terjadi, sehingga magnesium harus ditangani secara hati-hati. Terutama jika logam ini dalam keadaan terbelah-belah secara halus#R.drawable.h9
Ca#Calsium#Digunakan sebagai agen pencampur logam aluminium, berilium, tembaga, timbal, dan campuran logam magnesium#Logam Alkali Tanah#Konsumsi kalsium secara berlebihan dapat memicu kanker prostat#R.drawable.h10
Sr#Stronsium#Digunakan untuk bahan dasar produksi gelas kaca dan tabung tv berwarna#Logam Alkali#Dalam bentuk murni strontium sangat reaktif dengan combusts udara dan spontan, karena itu dianggap bahaya kebakaran#R.drawable.h11
Ba#Barium#Digunakan sebagai agen pemberat dalam fluida pengebor sumur minyak dan digunakan dalam pembuatan karet#Logam Alkali Tanah#Apabila dikonsumsi manusia dapat meningkatkan tekanan darah#R.drawable.h12
Ra#Radium#Digunakan dalam memproduksi cat yang menyala dengan sendirinya, digunakan untuk terapi kanker#Logam Alkali Tanah#Radium, jika tertelan, terhirup ataupun terekspos pada tubuh menjadi sangat berbahaya dan dapat menyebabkan kanker#R.drawable.h13

我已将我的图像放在 /res/drawablehdpi 上,并使用与 kimia.txt 相同的 id(h1、h2 等)。现在我的问题是当我运行我的应用程序时如何从可绘制的图像中显示该图像。

4

2 回答 2

0

可绘制文件夹中的每个图像都可以通过其名称访问。不需要身份证。您可以将图像设置为

R.drawable.imagename

图片不需要 id 。

于 2013-03-20T15:07:34.127 回答
0

这应该有效:

int resID = getResources().getIdentifier("androboy.unsurkimia:drawable/h1", null, null);
iv.setImageResource(resID);
于 2013-03-20T15:10:38.803 回答