日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

android 组件不可见,Android setVisibility(View.VISIBLE)不显示该组件

發(fā)布時(shí)間:2025/3/21 Android 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android 组件不可见,Android setVisibility(View.VISIBLE)不显示该组件 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

我正在使用setVisibility()隱藏onStart()中的一些UI組件,目的是在onActivityResult()的特定條件下使它們重新出現(xiàn)。

我已將變量設(shè)置為全局變量,并將其分配給組件onCreate()。

使組件不可見的代碼正常工作,例如auth_btn.setVisibility(View.INVISIBLE);

但是,在onActivityResult()處,auth_btn.setVisibility(View.VISIBLE);不會(huì)使按鈕重新出現(xiàn)。

代碼(來自評(píng)論中的pastebin):

private Button auth_btn = null;

private Button newAcc_btn = null;

private EditText mEdit = null;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

// Set up the window layout

setContentView(R.layout.main);

//instance of database adapter

db = new DBAdapter(this);

// Get local Bluetooth adapter

mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();

// If the adapter is null, then Bluetooth is not supported

if (mBluetoothAdapter == null) {

Toast.makeText(this, "Bluetooth is not available", Toast.LENGTH_LONG).show();

finish();

return;

}

auth_btn = (Button) findViewById(R.id.btn_auth);

mEdit = (EditText)findViewById(R.id.text_username);

newAcc_btn = (Button) findViewById(R.id.btn_newAcc);

//read every entry from database

db.load();

}

@Override

public void onStart() {

super.onStart();

// If BT is not on, request that it be enabled.

if (!mBluetoothAdapter.isEnabled()) {

Intent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);

startActivityForResult(enableIntent, REQUEST_ENABLE_BT);

// Otherwise, setup the session

} else {

setupSession();

}

}

private void setupSession () {

//Authenticate

auth_btn.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

try {

out.write(AUTHENTICATE);

out.flush();

} catch (IOException e) {

e.printStackTrace();

}

authenticate();

}

});

//Create new account

newAcc_btn.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View arg0) {

try{

out.write(NEWACCOUNT);

out.flush();

} catch (IOException e) {

e.printStackTrace();

}

newAccount();

}

});

//Scan QR Code

Button scan = (Button) findViewById(R.id.btn_scan);

scan.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

Intent intent = new Intent("com.google.zxing.client.android.SCAN");

intent.putExtra("SCAN_MODE", "QR_CODE_MODE");

startActivityForResult(intent, SCAN_QR_CODE);

}

});

auth_btn.setVisibility(View.INVISIBLE);

newAcc_btn.setVisibility(View.INVISIBLE);

mEdit.setVisibility(View.INVISIBLE);

}

@Override

public void onActivityResult(int requestCode, int resultCode, Intent intent) {

if (requestCode == SCAN_QR_CODE) {

if (resultCode == RESULT_OK) {

//Successful scan

processQR(intent.getStringExtra("SCAN_RESULT"));

//String format = intent.getStringExtra("SCAN_RESULT_FORMAT"); //format of the code

//Toast.makeText(this, contents, Toast.LENGTH_LONG).show();

} else if (resultCode == RESULT_CANCELED) {

Toast.makeText(this, "Scan failed!", Toast.LENGTH_SHORT).show();

}

}

if (requestCode == REQUEST_ENABLE_BT) {

// When the request to enable Bluetooth returns

if (resultCode == Activity.RESULT_OK) {

// Bluetooth is now enabled, so set up a chat session

setupSession();

} else {

// User did not enable Bluetooth or an error occurred

Log.d(TAG, "BT not enabled");

Toast.makeText(this, "Bluetooth cannot be enabled", Toast.LENGTH_SHORT).show();

finish();

}

}

}

public void processQR (String content) {

String[] contents = content.split(" ");

if (contents.length != 3) {

Log.e(TAG, "Not well formed QR Code");

}

else {

appKey = contents[APPKEY];

macAdd = contents[MACADR];

my_uuid = UUID.fromString(contents[UUID_STR]);

Log.d(TAG, macAdd);

String appName = db.getAppName(appKey);

Log.d(TAG, appName);

if (appName == null)

return;

Toast.makeText(this, appName, Toast.LENGTH_SHORT).show();

BluetoothDevice device = mBluetoothAdapter.getRemoteDevice(macAdd);

try {

bt = device.createInsecureRfcommSocketToServiceRecord(my_uuid);

bt.connect();

in = bt.getInputStream();

out = bt.getOutputStream();

} catch (IOException e) {

e.printStackTrace();

}

Log.d(TAG, "Set new acc visible");

mEdit = (EditText)findViewById(R.id.text_username);

mEdit.setVisibility(View.VISIBLE);

newAcc_btn.setVisibility(View.VISIBLE);

if (db.appAccounts(appKey).getCount() > 0)

auth_btn.setVisibility(View.VISIBLE);

}

}

總結(jié)

以上是生活随笔為你收集整理的android 组件不可见,Android setVisibility(View.VISIBLE)不显示该组件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。