gpt4 book ai didi

android - 如何从 android ProgressDialog 中删除标题和消息

转载 作者:太空宇宙 更新时间:2023-11-03 10:25:30 25 4
gpt4 key购买 nike

在 Android 中,我想在没有标题和消息的情况下在登录期间使用自定义 ProgressDialog 框。我无法让它正常工作。

我想要它像下面的 gif(注意没有标题或消息):

enter image description here

如何在我的代码中应用它?

我的代码(不起作用):

<Progressbar
android:id="@+id/progressBar2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:indeterminateDrawable="@drawable/progress_custom"
android:indeterminateOnly="false" />

这是我的progress_custom.xml:

<?xml version="1.0" encoding="utf-8"?>
<animated-rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:pivotX="50%"
android:pivotY="50%" >

<shape
android:innerRadiusRatio="4"
android:shape="ring"
android:thicknessRatio="5.333"
android:useLevel="false" >

<size
android:height="18dip"
android:width="18dip" />

<gradient
android:centerColor="#886688cc"
android:centerY="0.50"
android:endColor="#ff6688cc"
android:startColor="#006688cc"
android:type="sweep"
android:useLevel="false" />
</shape>

</animated-rotate>

我想要它以便在我登录时显示此 ProgressDialog。以下是我的使用方法:

public class MainSerenaActivity extends Activity {
EditText uname;
EditText pass;
EditText server;
Button login;
String strUname;
String unamePass;
String strPass;
String strServer;
String strServer_fn;
String unamepass;
String uPass;
String encPass;
TextView reg_txt;
MyApplication app;
String passwde;
ProgressDialog pd;
CheckBox servercheck_btn;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// getActionBar().setDisplayHomeAsUpEnabled(true);

uname = (EditText) findViewById(R.id.user_edt_lg);
pass = (EditText) findViewById(R.id.pass_edt_lg);
server = (EditText) findViewById(R.id.server);
login = (Button) findViewById(R.id.login);
servercheck_btn = (CheckBox) findViewById(R.id.checkBox1);
pd=(ProgressBar)findViewById(R.id.progressBar2);
login.setOnClickListener(new View.OnClickListener() {

@SuppressLint("ShowToast")
public void onClick(View v) {
strUname = uname.getText().toString().trim();
strPass = pass.getText().toString().trim();

MyApplication.setUserID(strUname);
MyApplication.setPassWord(strPass);

if (isInternetAvailable()) {
if ((uname.getText().toString()).equals("")
&& (pass.getText().toString()).equals("")) {

Toast toast = Toast.makeText(MainSerenaActivity.this,
"please enter username & password ",
Toast.LENGTH_LONG);
toast.show();

} else {

MyThread t = new MyThread(MainSerenaActivity.this, 0);
pd=ProgressDialog.show(MainSerenaActivity.this, "", "");


t.start();
Toast.makeText(MainSerenaActivity.this,
"Successfully login", Toast.LENGTH_SHORT)
.show();
uname.setText("");
pass.setText("");
server.setText("");
servercheck_btn.setChecked(false);
}
}

else {
Toast toast = Toast
.makeText(
MainSerenaActivity.this,
"No internet available.Please turn on the internet",
Toast.LENGTH_LONG);
toast.show();

}

}

});

}

public boolean isInternetAvailable() {
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = cm.getActiveNetworkInfo();
if (netInfo != null && netInfo.isConnectedOrConnecting()) {
return true;
}
return false;
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}

class MyThread extends Thread {
Context con;
int but;
Intent in;

MyThread(Context con, int but) {
this.con = con;
this.but = but;
}

public void run() {
try {
switch (but) {
case 0:
in = new Intent(MainSerenaActivity.this, Second_Btn.class);
if (servercheck_btn.isChecked()) {
if ((server.getText().toString()).equals("")) {
Toast toast = Toast.makeText(
MainSerenaActivity.this,
"please enter server ", Toast.LENGTH_SHORT);
toast.show();
} else {
strServer = server.getText().toString().trim();
strServer_fn = "https://" + strServer;
MyApplication.setServer(strServer_fn);
}
} else {
if ((server.getText().toString()).equals("")) {
strServer_fn = url;
MyApplication.setServer(strServer_fn);
} else {
strServer = server.getText().toString().trim();
strServer_fn = url;
MyApplication.setServer(strServer_fn);
}

}
startActivity(in);

break;

}
}

catch (Exception e) {
}

pd.dismiss();

}
}

}

但是 gif 仍然显示标题和消息。我只想要微调器,我该怎么做?

最佳答案

首先创建一个 Activity indocator 类。创建如下所示的构造函数。

public ActivityIndicator(Context context) {
super(context, android.R.style.Theme_Translucent_NoTitleBar_Fullscreen);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

setContentView(R.layout.activityindicator_dialog);

setCancelable(true);

RelativeLayout main = (RelativeLayout) findViewById(R.id.main);
main.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
}

现在你想在哪里设置进度对话框然后把下面的代码。您将获得自定义的进度对话框。

private static ActivityIndicator activityIndicator;
public static void hideActivityViewer() {
if (activityIndicator != null) {
activityIndicator.dismiss();
}
}

public static void showActivityViewer(Context context) {
if (activityIndicator == null) {
activityIndicator = new ActivityIndicator(context);
}
activityIndicator.show();
}

public static void clearDialogs() {
activityIndicator = null;
}

Activity 指示器的xml如下

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent">
<RelativeLayout android:gravity="center"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:id="@+id/main" android:background="@drawable/overlay_bck">
<TextView android:text="@string/loading"
android:textSize="15sp" android:textColor="#FFFFFF" android:id="@+id/text"
android:textStyle="bold" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:gravity="center_horizontal"></TextView>
<ProgressBar android:id="@+id/progress" android:layout_below="@+id/text"
style="@android:style/Widget.ProgressBar" android:layout_centerHorizontal="true"
android:layout_width="wrap_content" android:layout_height="wrap_content" />
</RelativeLayout>

关于android - 如何从 android ProgressDialog 中删除标题和消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13320618/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com