修复广告屏蔽规则保存,网址前面总有1个空格

This commit is contained in:
sonichy
2024-03-27 13:33:50 +08:00
parent eff2b03f0c
commit 14783e4b7b
6 changed files with 34 additions and 20 deletions

View File

@@ -4,14 +4,9 @@ import android.app.Activity;
import android.app.AlertDialog;
import android.content.ClipData;
import android.content.ClipboardManager;
import android.content.ContentValues;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.graphics.Color;
import android.media.MediaScannerConnection;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
@@ -26,19 +21,13 @@ import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.RadioButton;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
import java.io.BufferedWriter;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Arrays;
@@ -50,7 +39,6 @@ public class ADBlockActivity extends Activity {
ListView listView;
ArrayAdapter<String> adapter;
List<String> datas0, datas;
//String[] SL;
InputMethodManager IMM;
int position;
@@ -98,6 +86,29 @@ public class ADBlockActivity extends Activity {
adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, datas);
listView = (ListView) findViewById(R.id.listView);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
String url = ((TextView) arg1.findViewById(android.R.id.text1)).getText().toString();
AlertDialog.Builder builder = new AlertDialog.Builder(ADBlockActivity.this);
builder.setIcon(android.R.drawable.ic_menu_info_details);
builder.setTitle("规则");
builder.setMessage(url);
builder.setPositiveButton("打开", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Intent intent = new Intent(ADBlockActivity.this, MainActivity.class);
intent.putExtra("url", url);
intent.putExtra("newWindow", true);
setResult(RESULT_OK, intent);
}
});
builder.setNegativeButton("取消", null);
builder.create().show();
}
});
listView.setOnCreateContextMenuListener(new View.OnCreateContextMenuListener() {
@Override
public void onCreateContextMenu(ContextMenu menu, View view, ContextMenu.ContextMenuInfo menuInfo) {
@@ -132,12 +143,12 @@ public class ADBlockActivity extends Activity {
int id = item.getItemId();
switch (id) {
case 0:
//SL = readFile("blockrules").split(",");
datas0 = Arrays.asList(readFile("blockrules").split(","));
search();
break;
case 1:
String s = datas.toString().replace("[", "").replace("]", "");
IMM.hideSoftInputFromWindow(editText.getWindowToken(), 0);
String s = datas.toString().replace("[", "").replace("]", "").replace(", ", ",");
Log.e(Thread.currentThread().getStackTrace()[2] + "", "Write: " + s);
writeFile("blockrules", s);
break;
@@ -179,11 +190,11 @@ public class ADBlockActivity extends Activity {
break;
case 3:
final EditText editText_url = new EditText(ADBlockActivity.this);
editText_url.setMaxLines(3);
editText_url.setMaxLines(4);
editText_url.setHint("网址");
editText_url.setText(url);
AlertDialog.Builder builder = new AlertDialog.Builder(ADBlockActivity.this);
builder.setIcon(android.R.drawable.btn_star_big_on);
builder.setIcon(android.R.drawable.ic_menu_edit);
builder.setTitle("修改");
builder.setView(editText_url);
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@@ -241,6 +252,7 @@ public class ADBlockActivity extends Activity {
}
void search() {
IMM.hideSoftInputFromWindow(editText.getWindowToken(), 0);
datas.clear();
String s = editText.getText().toString();
for (int i=0; i<datas0.size(); i++) {