任何人都可以解释(或指向一个解释的链接)ListView项目的state_activated,state_selected,state_pressed和state_focused之间的区别?它们都是ListView的有效状态吗?是否使用触摸或键盘是否重要?此链接似乎不再有效.
非常感谢!
我正在查询这样的数据库:
SELECT DISTINCT
CASE WHEN CreatedDate = '1900-01-01 00:00:00.000' THEN '' ELSE CreatedDate END AS CreatedDate
FROM LitHoldDetails
Run Code Online (Sandbox Code Playgroud)
lhd.CreatedDate是一个DateTime字段,不可为空.如果字段是最小日期(1/1/1900),我想显示一个空字符串,但我的CASE语句不起作用; 当该值在数据库中时,CreatedDate在我的查询中显示1900-01-01 00:00:00.000.我正在使用SQL Server 2008 R2.我究竟做错了什么?
我EditText在Android中有一个Fragment.我addTextChangedListener在onCreateView方法中附上它.在addTextChangedListener我有一个onTextChanged方法.通过记录,我可以看到每次Fragment加载时都会onTextChanged被调用.为什么会这样?我只希望在用户实际更改文本时调用它EditText.这是我的代码:
@Override
public View onCreateView(final LayoutInflater inflater, final ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.detailfragment, container, false);
final EditText notes = (EditText)view.findViewById(R.id.stitchnotes);
notes.addTextChangedListener(new TextWatcher() {
@Override
public void afterTextChanged(Editable s) {
}
@Override
public void beforeTextChanged(CharSequence s, int start,
int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start,
int before, int count) {
Edited = true; …Run Code Online (Sandbox Code Playgroud) 我正在尝试将我的代码从使用游标转换为使用CursorLoaders.为了支持旧版本的Android,我安装了支持库,而不是导入android.content.CursorLoader,我正在导入android.support.v4.content.CursorLoader.现在编译好的代码会抛出两个错误.我实现它时,第一个错误是在LoaderManager上.错误是:LoaderManager无法解析为某种类型.第二个错误是对initLoader的调用.错误是:LoaderManager类型中的方法initLoader(int,Bundle,LoaderManager.LoaderCallbacks)不适用于参数(int,Bundle,MyList).这是我的代码:
public class MyList extends ListActivity implements LoaderManager.LoaderCallbacks<Cursor> {
private static final String[] PROJECTION = new String[] { "_id", "fieldname" };
private static final int LOADER_ID = 0;
private static final String MYTABLE_BASEPATH = "MyTable_tbl";
private static final String AUTHORITY = "SQLData";
public static final Uri MY_URI = Uri.parse("content://" + AUTHORITY + "/" + MYTABLE_BASEPATH);
private SimpleCursorAdapter mAdapter;
@SuppressWarnings("deprecation")
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent myData = getIntent();
Bundle info = myData.getExtras();
if (info != null){
Cursor c; …Run Code Online (Sandbox Code Playgroud) 当我运行下面的Java for Android代码时,我在GetItemList类的doInBackground方法中调用getSkuDetails的行上得到NullPointerException.但是当我在调试器中单步执行时,getSkuDetails的所有参数都有值.pName不是空字符串,querySkus中有两个项目.我得到的确切错误消息是"尝试调用接口方法"android.os.Bundle com.android.vending.billing.IInAppBillingService.getSkuDetails(int,java.lang.String,java.lang.String,android.os .Bundle)'对空对象引用." 有谁知道为什么?
package com.myknitcards;
import java.util.ArrayList;
import org.json.JSONException;
import org.json.JSONObject;
import com.android.vending.billing.IInAppBillingService;
import android.app.Activity;
import android.content.ComponentName;
import android.content.ServiceConnection;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.IBinder;
import android.os.RemoteException;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;
public class AvailableCards extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_available_cards);
String packagename = this.getPackageName();
TextView priceView = (TextView)findViewById(R.id.availablePrice);
new GetItemList(packagename, priceView).execute();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action …Run Code Online (Sandbox Code Playgroud) 首先让我说,我希望在飓风桑迪之后,东海岸的每个人都可以.我很幸运,虽然我住在纽约市,但我从未失去权力.我的想法告诉那些不那么幸运的人.现在我三天后回来工作了,我需要一些片段的帮助.我正在尝试将Bundle传递给Fragment并且它无法正常工作.我知道我的通用片段设置正确,因为如果我不尝试通过Bundle,它可以正常工作.所以这是我的活动,我通过Bundle:
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
Intent choice = new Intent(getApplicationContext(), com.MyProject.project.MyList.class);
Bundle dataBundle = new Bundle();
String chosenValue = values[position];
dataBundle.putString("Level",chosenValue);
choice.putExtras(dataBundle);
startActivity(choice); }
Run Code Online (Sandbox Code Playgroud)
现在这是我没有Bundle的活动.这很好用:
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
String[] values = new String[] { "Enterprise", "Star Trek", "Next Generation", "Deep Space 9", "Voyager"};
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, values);
setListAdapter(adapter);
}
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试从Bundle获取信息时,它不起作用.这是我的代码:
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
Bundle info = getArguments();
String level = info.getString("level");
String[] values = …Run Code Online (Sandbox Code Playgroud) 我在我的ASP.Net项目中创建了一个名为LitHoldModifications的类.这是代码:
[Serializable]
public class LitHoldModifications
{
private Boolean _changed;
private Hashtable _added;
private Hashtable _deleted;
public Boolean Changed
{
get { return _changed; }
set { _changed = value; }
}
public Hashtable Added
{
get { return _added; }
set { _added = value; }
}
public Hashtable Deleted
{
get { return _deleted; }
set { _deleted = value; }
}
public Hashtable Add(String item1, String item2)
{
Added = new Hashtable();
Added.Add(item1, item2);
return Added;
}
public …Run Code Online (Sandbox Code Playgroud) 我有一个变量 ,DifferenceAmt它是一个小数。它可以是负数,也可以是正数。我需要将 的值DifferenceAmt作为字符串输出,但如果它是负数,则不带负号。我知道如何通过首先检查是否DifferenceAmt小于零来删除负号,然后如果是,则从第二个字符执行子字符串,但这似乎很麻烦。我先尝试转换DifferenceAmt为 UInt64,
UInt64 differenceamt = (UInt64)DifferenceAmt;
Run Code Online (Sandbox Code Playgroud)
但我不断收到一条错误消息,指出该数字对于 UInt64 来说太大(例如,即使它是 -10)。我怎样才能做到这一点?
我的Android支持库存在问题.我已下载并显示在我的SDK中(在Extras下).但是,当我尝试导入android.support.v4.content.CursorLoader到Activity时,它会出错:
导入android.support无法解析
我该如何解决这个问题?
我有一个带有 3 个文本框和 1 个单选按钮列表的 ASP.Net 页面。4 个控件中的每一个都有
class="tabbable"
Run Code Online (Sandbox Code Playgroud)
在其定义中。这是完整的标记:
<%@ Control Language="c#" AutoEventWireup="false" Codebehind="approvalacctprocess.ascx.cs" Inherits="cmc.workflow.ui.ApprovalAcctProcess" TargetSchema="http://schemas.microsoft.com/intellisense/ie5" %>
<%@ Register tagprefix="CMC" Tagname="ApprovalComments" src="~/workflow\ui\ApprovalComments.ascx" %>
<script src="../../Scripts/jquery-1.4.1.js"></script>
<asp:Panel ID="pnlApprovalAC" CssClass="STDPANEL" HorizontalAlign="Center" Runat="server" Width="550">
<TABLE cols="2" width="520">
<TR>
<TD class="FLDLABEL" style="VERTICAL-ALIGN: top">Client Number</TD>
<TD>
<asp:TextBox id=txtclnum style="VERTICAL-ALIGN: top" Width="300" Runat="server" CssClass="FLDVALUE" TabIndex="0" onchange="MoveNext(this);" Text='<%# Property["clnum"] %>' MaxLength="14" AutoPostBack="True" class="tabbable"></asp:TextBox>
<asp:RegularExpressionValidator id="rxClNum" ValidationExpression="^[0-9]+[	]*$|Clt Number TBD" ErrorMessage="Client Number consists of up to 14 numbers"
ControlToValidate="txtclnum" runat="Server"></asp:RegularExpressionValidator></TD>
<TR>
<TD class="FLDLABEL" style="VERTICAL-ALIGN: top">Matter Number (5-6 digit)</TD> …Run Code Online (Sandbox Code Playgroud)