将活动显示为对话框[重复]
Posted
技术标签:
【中文标题】将活动显示为对话框[重复]【英文标题】:Showing an activity as a dialog [duplicate] 【发布时间】:2020-01-13 21:51:42 【问题描述】:这是我想成为对话的活动:
public class TrainerBookingDialogActivity extends AppCompatActivity
@Override
protected void onCreate(Bundle savedInstanceState)
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_trainer_booking_dialog);
<activity android:name="com.clearmindai.trainer.module.bookdialog.TrainerBookingDialogActivity"
android:theme="@android:style/Theme.Holo.Light.Dialog"></activity>
我这样称呼它:
public static void showBookedDialog(Context context)
Intent intent=new Intent(getApplicationContext(), TrainerBookingDialogActivity.class);
context.startActivity(intent);
//show dialog
但错误告诉我:
您需要使用 Theme.AppCompat 主题(或后代) 活动。
【问题讨论】:
将您的活动背景设置为透明,并在您想要显示 UI 的位置添加布局。 它显示错误。 因为你使用的是AppCompatActivity,所以使用AppCompatActivity你需要使用AppCompat主题。 ' 只需将Theme.Holo.Light.Dialog
更改为Theme.AppCompat.Light.Dialog
。
【参考方案1】:
试试这个代码
public class MyCustomDialogFragment extends DialogFragment
@Override
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle s
avedInstanceState)
View v = inflater.inflate(R.layout.fragment_my_custom_dialog, container, false);
// Do all the stuff to initialize your custom view
return v;
请查看此链接click here
【讨论】:
java.lang.RuntimeException:无法实例化活动 ComponentInfocom.clearmindai.trainer/com.clearmindai.trainer.module.bookdialog.TrainerBookingDialogActivity:java.lang.ClassCastException:com.clearmindai.trainer .module.bookdialog.TrainerBookingDialogActivity 无法转换为 android.app.Activity 请分享完整代码以上是关于将活动显示为对话框[重复]的主要内容,如果未能解决你的问题,请参考以下文章