Инициализируйте Button
следующим образом:
dial = v.findViewById(R.id.dial);
Может случиться, что вы не определили Button
хорошо.getActivity()
работает на самом деле.
Также, onDialButton
никогда не использовался.Вместо этого добавьте слушателя к Button
, затем вызовите onDialButton
:
dial.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
onDialButton();
}
});
Обновление:
Вы должны использовать ContextCompat.checkSelfPermission
в настоящее время:
public void onDialButton() {
if (ContextCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
// Permission is not granted
}
// first check for the permission
Intent intent = new Intent(Intent.ACTION_CALL);
intent.setData(Uri.parse("tel:xxxxxxxxxx"));
startActivity(intent);
}
И просто позвоните onDialButton()
в свой onClick()
.
Прочтите документацию: https://developer.android.com/training/permissions/requesting#java