0

私は掘り下げてきましたが、有用なものが見つかりません。

私はAndroidアプリに取り組んでいます。

基本的に私はパッケージを持っていて、これまでのところ 3 つの Java ファイルがあります。私のメイン画面ページ、設定ページ、そして「subs.java」と呼んでいるもので、便利な関数やルーチンを配置しています。

私がやろうとしているのは、複数の場所で使用されるルーチンを保存できるこの「subs.java」ファイルを作成することです。

メインのアプリ ページと設定ページがあります。これらの「ページ」は両方とも、これらの共通機能を使用する必要があります。

だから私はそれらを「subs.java」に入れるつもりだったので、コードが2倍になることはありません。

私が立ち往生しているのは、このsubs.javaファイルを持っていることです。どうすればそれにリンクできますか?

PHP で別のファイルを使用したい場合は、それをインクルードするだけで、そのすべての機能にアクセスできます。

ライブラリを構築しようとしていると思いますが、Java は初めてです。

それでは、Eclipse/Javaでこれを行うにはどうすればよいですか?

これが私のsubsファイルで、他の場所で見つけたいくつかの便利な機能があります:

package com.example.helloandroid;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

import android.app.Activity;
import android.content.Context;
import android.widget.Toast;

public class Subs extends Activity {

    // Read settings
    public String ReadSettings(Context context){
        FileInputStream fIn = null;
        InputStreamReader isr = null;

        char[] inputBuffer = new char[255];
        String data = null;

        try {
            fIn = openFileInput("settings.dat");      

            isr = new InputStreamReader(fIn);
            isr.read(inputBuffer);
            data = new String(inputBuffer);

            Toast.makeText(context, "Settings read",Toast.LENGTH_SHORT).show();
        }
        catch (Exception e) {      
            e.printStackTrace();
            Toast.makeText(context, "Settings not read",Toast.LENGTH_SHORT).show();
        }
        finally {
            try {
                isr.close();
                fIn.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        return data;
    }

 // Save settings
    public void WriteSettings(Context context, String data){
        FileOutputStream fOut = null;
        OutputStreamWriter osw = null;

        try {
              fOut = openFileOutput("settings.dat",MODE_PRIVATE);      
              osw = new OutputStreamWriter(fOut);
              osw.write(data);
              osw.flush();
              Toast.makeText(context, "Settings saved",Toast.LENGTH_SHORT).show();
        }
        catch (Exception e) {      
            e.printStackTrace();
            Toast.makeText(context, "Settings not saved",Toast.LENGTH_SHORT).show();
        }
        finally {
            try {
                osw.close();
                fOut.close();
            }
            catch (IOException e) {
                e.printStackTrace();
            }
        }
    }




}
4

4 に答える 4

0

includeJavaの PHP に最も近いのはimport. Java でのimportpackageの使用の詳細を参照してください。

于 2011-10-16T15:28:18.730 に答える
0

プロジェクトをパッケージとして作成した場合、そのパッケージを使用するすべてのクラスが他のパッケージにアクセスできます。したがって、 package を使用していてSomeFileA.java、それが packagecom.something.meSomeFileB.java使用しているcom.something.me場合、それらは相互に参照できます。SomeFileB b = new SomeFileB();通常、 SomeFileA 内の書き込みをフラットにすると、Eclipse はすべてのインポートを自動追加します。そうでない場合は、使用できます

import com.something.me.SomeFileB;
于 2011-10-16T15:28:58.693 に答える
0

このステートメントを使用してimport、サブクラスをインポートします。次に、サブクラスの任意の関数を次のように参照できますsubs.functionName()

subs.java が他の Java ファイルと同じフォルダーにある場合は、単にimport subs.

パッケージとインポートの詳細については、http://www.particle.kth.se/~lindsey/JavaCourse/Book/Part1/Java/Chapter05/packagesImport.htmlを参照してください。

于 2011-10-16T15:29:29.940 に答える
0

「インポート」はどうですか?ライブラリだけでなく、単純なクラスをインポートできます...

共通ルーチンを静的メソッドとしてクラス (たとえば「MyAppHelper」) に配置し、それらを「画面」で呼び出します。

MyAppHelper.function1(...)
于 2011-10-16T15:31:46.447 に答える