奶茶精Gaaa 2024-03-20 20:58 采纳率: 46.2%
浏览 8

为什么点击按钮“跳转到短信页面”跳转如图2所示?或者有的时候显示拨号页面

为什么点击按钮“跳转到短信页面”跳转如图2所示?或者有的时候显示拨号页面

img

img


package com.example.myapplication;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;

import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;

public class ActionUriActivity extends AppCompatActivity implements View.OnClickListener {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        EdgeToEdge.enable(this);
        setContentView(R.layout.activity_action_uri);
     findViewById(R.id.btn_dial).setOnClickListener(this);
        findViewById(R.id.btn_sms).setOnClickListener(this);
        findViewById(R.id.btn_my).setOnClickListener(this);

    }

    @Override
    public void onClick(View v) {
        Intent intent=new Intent();

        String phoneNo="12345";
        switch (v.getId()){
            case R.id.btn_dial:
                intent.setAction(Intent.ACTION_DIAL);
                Uri uri= Uri.parse("tel:"+phoneNo);
                intent.setData(uri);
                startActivity(intent);
                break;
            case R.id.btn_sms:
                intent.setAction(Intent.ACTION_SENDTO);
                Uri uri2= Uri.parse("tel:"+phoneNo);
                intent.setData(uri2);
                startActivity(intent);
                break;
            case R.id.btn_my:

                intent.setAction("android.intent.action.NING");
               intent.addCategory(Intent.CATEGORY_DEFAULT);
               startActivity(intent);
                break;

        }
    }
}



```xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".ActionUriActivity"
    android:orientation="vertical">
    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="5dp"
        android:text="点击以下按钮将向号码12345发起请求"
        />
    />
    <Button
        android:id="@+id/btn_dial"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="跳转到拨号页面"/>

    <Button
        android:id="@+id/btn_sms"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="跳转到短信页面"/>
    />
    <Button
        android:id="@+id/btn_my"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="跳转到我的页面"/>
    />


</LinearLayout>

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">

    <application
        android:allowBackup="true"
        android:dataExtractionRules="@xml/data_extraction_rules"
        android:fullBackupContent="@xml/backup_rules"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.MyApplication"
        tools:targetApi="31">

        <activity
            android:name=".LoginSuccessActivity"
            android:exported="false" />
        <activity
            android:name=".JumpSecondActivity"
            android:exported="false" />
        <activity
            android:name=".GridLayoutActivity"
            android:exported="false" />
        <activity
            android:name=".util.RelativeLayoutActivity"
            android:exported="false" />
        <activity
            android:name=".LinearLayoutActivity"
            android:exported="false" />
        <activity
            android:name=".ViewGravityActivity"
            android:exported="false" />
        <activity
            android:name=".ViewMarginActivity"
            android:exported="false" />
        <activity
            android:name=".TextColorActivity"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".CalculatorActivity"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.NING" />
<!--设置成btn_my-->
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".ButtonStyleActivity"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".ActStartActivity"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity> <!-- ActFinishActivity -->
        <activity
            android:name=".ActionUriActivity"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

  • 写回答

3条回答 默认 最新

  • 码农阿豪@新空间 新星创作者: 前端开发技术领域 2024-03-20 20:58
    关注
    让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
    答案: 点击按钮“跳转到短信页面”跳转如图2所示是因为代码中设置了Intent.ACTION_SENDTO和Uri.parse("tel:"+phoneNo),这会隐式地启动能够处理这个意图的应用程序,即打开发送短信的应用。 而有的时候显示拨号页面是因为代码中设置了Intent.ACTION_DIAL和Uri.parse("tel:"+phoneNo),这会隐式地启动能够处理这个意图的应用程序,即打开拨号应用。 下面是代码: Intent intent=new Intent(); String phoneNo="12345"; switch (v.getId()){
    case R.id.btn_dial:
        intent.setAction(Intent.ACTION_DIAL);
        Uri uri= Uri.parse("tel:"+phoneNo);
        intent.setData(uri);
        startActivity(intent);
        break;
    case R.id.btn_sms:
        intent.setAction(Intent.ACTION_SENDTO);
        Uri uri2= Uri.parse("tel:"+phoneNo);
        intent.setData(uri2);
        startActivity(intent);
        break;
    case R.id.btn_my:
        intent.setAction("android.intent.action.NING");
        intent.addCategory(Intent.CATEGORY_DEFAULT);
        startActivity(intent);
        break;
    

    }

    评论

报告相同问题?

问题事件

  • 创建了问题 3月20日