Androidstudioのインテントの概要(1)

アクティビティ(アクティビティ)の使用は単純すぎます。シャトルや複数の機能を使用するのは興味深いことです。以下はインテントの外観です(ページジャンプとして理解できます)。

PS:それは意図の知識のほんの一部の簡単な紹介です、あまりにも多くの使用法と使用法は学ぶために読んだり閲覧したりするのにあなたの時間を必要とします!

インテントは表示と暗黙の呼び出しに分けられます!

明示的なインテントインスタンス

ボタンをクリックして別のインターフェースにジャンプするように実装します。

activity.main.xmlで、button1のボタンIDをbtn1として設定し、空のアクティビティをMain2Activityとして作成します。同時に、activity_main2.xmlがres/layoutに表示されます。btn1をクリックしてインターフェイスをポップアップします。これは簡単ですbutton2コントロールを設定し、MainActivity.javabtn1のメソッドで記述します

Intent intent = new Intent(MainActivity.this、Main2Activity.class); 
startActivity(intent); //インテントブラケットには2つのパラメーターがあり、1つ目はこのクラス、2つ目はジャンプ先のインターフェースに対応するJavaファイルです。具体的には、コードは次のように表示されます

MainActivity.java

package com.example.firstcode;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

    private Button btn1;
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        btn1=findViewById(R.id.btn1);
        btn1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent =new Intent(MainActivity.this,Main2Activity.class);
                startActivity(intent);



            }
        });
       
    }



}

 BUTTON1をクリックした後のスクリーンショットは次のとおりです

暗黙の意図

ボタンをクリックして別のインターフェースにジャンプすることを実現します(実現は上記の機能効果と同じです)

<activity-タグの下に<intent-filter-のコンテンツを設定すること
で、現在のアクティビティが応答できるアクションとカテゴリを指定し、AndroidManifest.xmlを開いて、次のコードを追加できます。
<activity android:name = " Main2Activity ">

<intent- filter>
action android:name =" com、example.activitytest.ACTION_START "/>
<category android:name-" android.intent.category.DEFAULT "/>
</ intent-filter>
</ activity >
in the action> tag Inでは、現在のアクティビティがcom.example.activitytest.ACTION STARTのアクションに応答できることを示し
、category-tagには、現在のアクティビティ
ができるインテントに応答します<action〜とccategory =のコンテンツが
、インテントで指定されたアクションとカテゴリに同時に一致する場合にのみ、アクティビティはインテントに応答でき
ます。mainActiviyのbtn1のクリックコードをbuttonl.setOnClicklistenerinewViewのように変更します


public void onclick(View vI(
Intent intent = new Intent( "com、example、activitytest.ACTION START");
startActivity(intent);

最後に、上記の機能が実現されていることがわかった。

次に、暗黙のインテントを使用してボタンをクリックし、Webページにジャンプします。

別のjavaおよびxmlファイルを作成する必要はなく、MainActivity.javaのbtn1メソッドの下に追加します。

インテントインテント=newIntent(Intent.ACTION_VIEW); 
intent.setData(Uri.parse( "http://www.baidu.com")); 
startActivity(intent);

button1のボタンをクリックした場合の効果は以下のとおりです。

 クリック後の効果のスクリーンショット

 

 

暗黙の意図を使用する

クリックボタンを実現して電話インターフェースにジャンプします

方法はウェブページを実装する方法と同じですが、Androidは、httpプロトコルに加えて、地理的な場所を表示するためのge0や電話を
かけるためのtelなど、他の多くのプロトコルを指定することもできます。次のコードは、プログラムでシステムダイヤルインターフェイスを呼び出す方法を示しています。
btn1.setOnClickListener(new View.OnClickListener()[@Override
public
void onClick(View v){ Intent intent = new Intent(Intent.ACTION_DIAL):intent.setData(Uri.parse( "tel:10086")); startActivity(インテント); }



});
最初にインテントを指定するアクションはIntent.ACTION_DIALです。これは
、Androidシステムのもう1つの組み込みアクションです。次に、データセクションでは、プロトコルはielで、番号は10086です。

MainActivity.java

package com.example.firstcode;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

    private Button btn1;
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        btn1=findViewById(R.id.btn1);
        /*btn1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent =new Intent(MainActivity.this,Main2Activity.class);
                startActivity(intent);



            }
        });*/
        /*btn1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent =new Intent(Intent.ACTION_VIEW);
                intent.setData(Uri.parse("http://www.baidu.com"));
                startActivity(intent);
            }
        });*/

        btn1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
            Intent intent = new Intent (Intent.ACTION_DIAL);
                    intent.setData(Uri.parse("tel:10086"));
            startActivity(intent);
            }
        });
    }

}

ボタンをクリックすると、効果は次のようになります。

 クリック後のレンダリング

 

おすすめ

転載: blog.csdn.net/Abtxr/article/details/124025178