为了给我的应用程序的用户指示哪个字段当前具有焦点我正在尝试根据当前状态更改某些字段的背景颜色,但是,我在理解Androids颜色状态列表资源时遇到了麻烦:
我找到了示例(对不起,URL不再有效),如果我尝试完全相同,即如果我想调整textColor,事情确实有效.但是,如果我尝试的只是略有不同的东西,即相适应的背景颜色,事情不工作,我不明白为什么?为什么这么不一致?
为了更容易理解我想要做什么,我附加了我的混合物..xml文件:
该AndroidManifest.xml
文件中:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="mmo.android.test"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".Test"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
Run Code Online (Sandbox Code Playgroud)
的Test-Activity
:
package mmo.android.test;
import android.app.Activity;
import android.os.Bundle;
public class Test extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
Run Code Online (Sandbox Code Playgroud)
的res/values/strings.xml
: …
Collection接口有多种方法.List接口扩展了Collection接口.它声明与Collection接口相同的方法?为什么会这样?
例如
interface Collection extends Iterable
{
public abstract int size();
public abstract boolean isEmpty();
public abstract boolean contains(java.lang.Object);
public abstract java.util.Iterator<E> iterator();
public abstract java.lang.Object[] toArray();
public abstract <T extends java/lang/Object> T[] toArray(T[]);
public abstract boolean add(E);
public abstract boolean remove(java.lang.Object);
public abstract boolean containsAll(java.util.Collection<?>);
public abstract boolean addAll(java.util.Collection<? extends E>);
public abstract boolean removeAll(java.util.Collection<?>);
public abstract boolean retainAll(java.util.Collection<?>);
public abstract void clear();
public abstract boolean equals(java.lang.Object);
public abstract int hashCode();
}
Run Code Online (Sandbox Code Playgroud)
List接口中也存在相同的方法:
public interface List extends Collection
{ …
Run Code Online (Sandbox Code Playgroud) 我已经使用layout_weight
参数将按钮的宽度设置为总布局宽度的70%,但似乎我缺少一些重要的细节才能使它工作.
(另一个解决方案是以display.getWidth()
编程方式工作,但它也不起作用,因为我不知道我的.xml应该是什么样子如果我选择设置宽度button.setWidth()
)
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:layout_weight="1.0">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="15px"
android:id="@+id/userVersionTextViewNew"
android:gravity="center"
android:layout_centerVertical="true"/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="15px"
android:gravity="center"
android:layout_above="@id/userVersionTextViewNew"
android:id="@+id/userSoftSerialNumberTextView"/>
<ImageView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:src="@drawable/logo_200"
android:layout_above="@id/userSoftSerialNumberTextView"
android:layout_centerHorizontal="true"/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="15px"
android:gravity="center"
android:layout_below="@id/userVersionTextViewNew"
android:id="@+id/dummyTextView"/>
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/loginButton"
android:text="???????"
android:layout_centerHorizontal="true"
android:layout_below="@id/dummyTextView"
android:layout_weight="0.7"/>
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/demoLoginButton"
android:text="??????????? ?????"
android:layout_centerHorizontal="true"
android:layout_below="@id/loginButton"
android:layout_weight="0.7"/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud) 我有这部分代码.加载页面时,所有div都已加载但尚未可见.这是一种在单击时开始加载div内容的方法吗?现在由于所有div,页面变慢了
<a href="#?w=550" rel="popup_add_dossier" class="poplight" title="'.$lang['form_add'].'"><img src="images/icon/new.png" ></a>
<div id="popup_add_dossier" class="popup_block">
<iframe src="add_dossier.php" frameborder="0" scrolling="no" width="550" height="400">
Run Code Online (Sandbox Code Playgroud) 我想弄清楚如何简化以下内容
假设我有2个实体类
public class A
{
public int Id { get; set; }
public string Name { get; set; }
public string City { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
和
public class B
{
public int Id { get; set; }
public string Nom { get; set; }
public string Ville { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
类似但不相同的类.
每个类都有一个用于CRUD操作的存储库类,例如......
public class RepA
{
public static List<A> GetAll()
{
List<A> list = new List<A>();
A a1 = new A() {Id=1, Name="First A", City="Boston"}; …
Run Code Online (Sandbox Code Playgroud) 我想分解一个句子并将每个字符串存储在一个数组中.这是我的代码:
#include <stdio.h>
#include <string.h>
int main(void)
{
int i = 0;
char* strArray[40];
char* writablestring= "The C Programming Language";
char *token = strtok(writablestring, " ");
while(token != NULL)
{
strcpy(strArray[i], token);
printf("[%s]\n", token);
token = strtok(NULL, " ");
i++;
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
它一直给我分段错误,我无法弄明白.我相信当我将令牌复制到我的阵列时,它有一些事情要做.
我需要根据关键字获取一些数据,查询测试到100%准确,但问题是加载reader
速度很慢.我试过用一个完全不包含inner join
s的查询替换这个查询,并且加载非常快.所以我想知道,因为我只选择了一列,为什么DataTable.Load()花了这么多时间?这是不是SQLite
的ExecuteReader
加载整个结果,而不仅仅是一列?
在使用DataTable之前,每个执行平均时间reader.Read()
为7秒.
这是我的代码:
_database.Connect();
var selectCommand = new SQLiteCommand(
@"SELECT A.ID AS MY_ID FROM MD
INNER JOIN TMD ON MD.ID = TMD.ID_MD
INNER JOIN TR ON TR.ID = TMD.ID_TR
INNER JOIN P ON P.ID = TR.ID_P
INNER JOIN DP ON DP.ID_P = P.ID
INNER JOIN CD ON CD.ID = DP.ID_CD
WHERE CD.DESC = @desc"
);
selectCommand.Parameters.AddWithValue("@desc", value);
using (DbDataReader reader = _database.ExecuteQuery(selectCommand))
{
DataTable data = new DataTable("MyData");
data.Load(reader); …
Run Code Online (Sandbox Code Playgroud) 我的程序包含一个Activity
class
和一个数据库class
.我用来保存数据库值的代码ListView
有一些问题.下面是一个inner class
在Activity
:
class getclicker extends ListActivity implements Button.OnClickListener {
public void onClick(View v) {
String datevalue = date.getText().toString();
String Userselectvalue = userSelection.getText().toString();
cursor1 = eventsData.getContact(datevalue, Userselectvalue);
String[] fromColumns = { classdbOpenHelper.KEY_EVENT };
int[] toViews = { R.id.event };
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.events, cursor1, fromColumns, toViews, 0);
listView = getListView();
listView.setAdapter(adapter);
}
public void onDestroy() {
eventsData.close();
}
}
Run Code Online (Sandbox Code Playgroud)
sqlite类包含
public Cursor getContact(String datevalue, String Userselectvalue) {
String …
Run Code Online (Sandbox Code Playgroud) 我开发了一个应用程序,有些人抱怨它需要太多的电池,这是屏幕后第二大消耗的过程.但是,在某些设备中,它不会消耗那么多电池.
我的应用程序所做的所有工作都在服务中.该服务是粘性的并且一直在运行(android系统可能在资源较少时将其杀死或在设备进入休眠状态时暂停),只要屏幕打开就有监听加速度计,它不是前台服务并没有举行唤醒锁.
有人能告诉我为什么需要大量电池吗?为什么这只发生在一些设备上?
这是相关代码:
public class aListenerService extends Service implements SensorEventListener
{
private BroadcastReceiver mScreenReceiver = new BroadcastReceiver()
{
// if screen was turned on then register to accelerometer
// if screen was turned off then unregister from accelerometer
}
private BroadcastReceiver mPhoneStateReceiver = new BroadcastReceiver()
{
// do something...
}
@Override
public void onCreate()
{
super.onCreate();
// get sensor manager and accelerometer sensor
mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
// register accelerometer sensor and receiver
mSensorManager.registerListener(this, mAccelerometer, SensorManager.SENSOR_DELAY_NORMAL); …
Run Code Online (Sandbox Code Playgroud) 根据这个答案,我创建了一个自定义DialogHandler
来处理从WebBrowser控件中弹出的Javascript警告框.
在Handler
连接到一个继承华廷IE
浏览器,称为ExtendedIeBrowser
.
由于未知原因,watin的DialogHandler会干扰Winforms SaveFiledialogs.该SaveFileDialog
自动通过返回DialogResult.Cancel关闭.奇怪的是,Handle()
自定义处理程序的调用永远不会被调用.只CanHandle()
调用(两次)并返回false,因此根本不应该处理对话框,因此它应该保持打开状态.
有什么我可以做的改变克服这种奇怪的行为吗?
这是ExtendedIeBrowser
来源:
public class ExtendedIeBrowser : IE
{
private IntPtr hwnd;
public ExtendedIeBrowser(WebBrowser webBrowserControl) : base(webBrowserControl.ActiveXInstance, false)
{
}
public void Initialize(WebBrowser webBrowserControl)
{
hwnd = webBrowserControl.FindForm().Handle;
StartDialogWatcher();
}
public override IntPtr hWnd { get { return hwnd; } }
protected override void Dispose(bool disposing)
{
hwnd = IntPtr.Zero;
base.Dispose(disposing);
}
}
Run Code Online (Sandbox Code Playgroud)
以下CustomPopupDialogHandler
来源:
class CustomPopupDialogHandler : …
Run Code Online (Sandbox Code Playgroud)