文章目录 MyTool 工具界面:百度、拨号、一键拨号 ♦ 回顾 ♦ 设计 activity_my_tool.xml 界面 ♦ 编写 MyToolActivity 实现功能 ♦ 修改 AndroidManifest.xml 文
文章目录
- MyTool 工具界面:百度、拨号、一键拨号
- ♦ 回顾
- ♦ 设计 activity_my_tool.xml 界面
- ♦ 编写 MyToolActivity 实现功能
- ♦ 修改 AndroidManifest.xml 文件授予拨号权限
MyTool 工具界面:百度、拨号、一键拨号
♦ 回顾
通过上一节的学习,我们实现了登陆后工具界面的跳转,如下图所示。今天,就要在这个界面中实现百度、拨号、一键拨号。
返回顶部
♦ 设计 activity_my_tool.xml 界面
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.myapplication.MyToolActivity"
android:background="@drawable/main_page">
<TextView
android:id="@+id/welcome"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:layout_alignParentBottom="true"
android:layout_marginStart="28dp"
android:layout_marginLeft="28dp"
android:layout_marginBottom="25dp"
android:text=""
android:textColor="@android:color/white"
android:textSize="20dp"/>
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="58dp"
android:text="My Tools"
android:textColor="@android:color/white"
android:textSize="25dp"
android:textStyle="bold"/>
<Button 百度
android:id="@+id/net"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginStart="39dp"
android:layout_marginLeft="39dp"
android:layout_marginTop="182dp"
android:text="百度"
android:textSize="16dp"/>
<Button 拨号
android:id="@+id/call"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="182dp"
android:text="拨号"
android:textSize="16dp"/>
<Button 一键拨号
android:id="@+id/quick_call"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_marginTop="182dp"
android:layout_marginEnd="39dp"
android:layout_marginRight="39dp"
android:text="快速拨号"
android:textSize="16dp"/>
</RelativeLayout>
返回顶部
♦ 编写 MyToolActivity 实现功能
public class MyToolActivity extends AppCompatActivity {TextView welcome;
Button net, call, quick_call;
//权限请求:载入界面、特定情况触发
//定义权限 --- 动态权限,申请哪一个就启动哪一个,通常为常量
private static String[] PERMISSIONS_STORAGE = {
Manifest.permission.CALL_PHONE
};
//请求状态码
private static int REQUEST_PERMISSION_CODE = 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my_tool);
// 欢迎信息
welcome = findViewById(R.id.welcome);
final Intent intent = getIntent();
intent.getStringExtra("username");
welcome.setText("欢迎您" + intent.getStringExtra("username"));
// 获取工具组件
net = findViewById(R.id.net);
call = findViewById(R.id.call);
quick_call = findViewById(R.id.quick_call);
// 浏览器 --- 百度
net.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent1 = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.baidu.com"));
startActivity(intent1);
}
});
//特定情况下触发权限
//首先判断版本
if(Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP){
// 检查当前的权限
if (ActivityCompat.checkSelfPermission(MyToolActivity.this,Manifest.permission.CALL_PHONE) !=
PackageManager.PERMISSION_GRANTED){
ActivityCompat.requestPermissions(MyToolActivity.this,PERMISSIONS_STORAGE,REQUEST_PERMISSION_CODE);
}
}
// 拨号
call.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent1 = new Intent();
intent1.setAction(Intent.ACTION_CALL);
intent1.setData(Uri.parse("tel:13222126167"));
startActivity(intent1);
}
});
// 快速拨号
quick_call.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent1 = new Intent();
intent1.setAction(Intent.ACTION_DIAL);
intent1.setData(Uri.parse("tel:13222126167"));
startActivity(intent1);
}
});
}
}
返回顶部
♦ 修改 AndroidManifest.xml 文件授予拨号权限
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myapplication_test">
<uses-permission android:name="android.permission.CALL_PHONE" /> 授予拨号权限
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name="com.example.myapplication.MyToolActivity"></activity>
<activity android:name="com.example.myapplication.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
返回顶部
效果展示:
返回顶部
上一篇:【Android】用户登录界面功能实现
下一篇:MyTool 工具界面:手电筒