我想创建一个左右滑动的照片库.起初我看了看Gallery,但它被标记为已弃用.
http://developer.android.com/reference/android/widget/Gallery.html
我们被告知要尝试ViewPager.但该PagerAdapter课程不处理我们的观点回收(如标准ListView),是吗?
http://developer.android.com/reference/android/support/v4/view/PagerAdapter.html
我们是否应该建立回收机制?
谢谢
我试图ViewPager通过在其中实现两个方法来保存当前状态(当前位置等)PagerAdapter:restoreState()和saveState().但是,在我的情况下,它们似乎无法正常工作.我做错了什么?
@Override
public Parcelable saveState() {
Bundle bundle = new Bundle();
bundle.putParcelable("instanceState", super.saveState());
bundle.putInt("stateToSave", position);
return bundle;
}
@Override
public void restoreState(Parcelable state, ClassLoader c) {
if (state instanceof Bundle) {
Bundle bundle = (Bundle) state;
position = bundle.getInt("stateToSave");
super.restoreState(bundle.getParcelable("instanceState"), c);
return;
}
super.restoreState(state, c);
}
Run Code Online (Sandbox Code Playgroud) 我创建了一个Activity实现LoaderManager.LoaderCallbacks<Cursor>接口的简单方法 .该OnCreateLoader()很简单:
@Override
public Loader<Cursor> onCreateLoader(int id, Bundle args)
{
Log.d(TAG, "On create loader");
Uri queryUri = ContentUris.withAppendedId(SmartPresentationMessage.Person.CONTENT_URI, 1);
CursorLoader cursorLoader = new CursorLoader(this, queryUri, null, null, null, null);
return cursorLoader;
}
Run Code Online (Sandbox Code Playgroud)
当我getLoaderManager().initLoader(0, null, this)在Activity创建时调用时调用此方法.
我的问题是在我的ContentProvider,有以下query()方法:
@Override
public Cursor query(Uri uri, String[] projection, String where,
String[] whereArgs, String sortOrder)
{
int match = sUriMatcher.match(uri);
Cursor queryCursor;
SQLiteDatabase mdb = mOpenHelper.getReadableDatabase();
switch (match)
{
case PERSON:
long …Run Code Online (Sandbox Code Playgroud) 我正在使用查询方法SQLiteDatabase.我需要有关此方法的orderBy参数的帮助.
Cursor cursor = sqLiteDatabase.query(tableName, tableColumns, whereClause, whereArgs, groupBy, having, orderBy);
public Cursor getAllCustomexp(int TID) throws SQLException
{
Cursor mCursor =
db.query(false, CEXP_TABLE, new String[] {KEY_CEID, FLD_CETID, FLD_CEEID, FLD_CEMID,
FLD_CEAMT, FLD_CESEL}, FLD_CETID + " = " + TID, null,
null, null, FLD_CEEID, null);
if (mCursor != null) {
mCursor.moveToFirst();
}
return mCursor;
}
Run Code Online (Sandbox Code Playgroud)
问题1:在上面的查询中,结果集将按FLD_CEEID升序还是降序排序?
问题2:如果我需要先按顺序排序结果集FLD_CEEID,然后按FLD_CEMID如何通过此查询的参数构造顺序.
是否可以使用此方法执行多个订单?
我们在tomcat 6.0.35上运行activeMQ5.6作为嵌入式代理,并将消息传递选项设置为PERSISTENT.我们在其中一个消费者方面遇到OutOfMemory问题.由于耗时的工作,消费者很慢.我们过去8-10小时后就得到了OOM.在处理3000条消息之后,必须处理大约10000条消息并给予OOM,其余7000条消息保持待处理状态.消息大小非常小~1KB的xml格式.虽然我们在差异队列上有其他消费者非常快,并且还发布了大约10000条消息,并且消息大小非常高~100 KB但我们没有在该队列上获得OOM.虽然它是在同一个经纪人上设置的.
这是错误的堆栈跟踪和out activemq.xml文件
INFO [11/08/12 05:39:31] ActiveMQ会话任务-4开始上传Nam2011_08_prototype/gdfas/mnada/usa/uf3.7z.001到Amazon S3存储桶 - aws-s3-infotech线程中的异常"InactivityMonitor WriteCheck "java.lang.OutOfMemoryError:无法在java.util.conhurrent.ThreadPoolExecutor.addIfUnderMaximumPoolSize的java.lang.Thread.start(Thread.java:640)的java.lang.Thread.start0(本机方法)中创建新的本机线程(ThreadPoolExecutor.java:727)位于org.apache.activemq的org.apache.activemq.transport.AbstractInactivityMonitor.writeCheck(AbstractInactivityMonitor.java:142)的java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:657). transport.AbstractInactivityMonitor $ 2.run(AbstractInactivityMonitor.java:111)atg.apache.activemq.thread.SchedulerTimerTask.run(SchedulerTimerTask.java:33)at java.util.TimerThread.mainLoop(Timer.java:512)at java. util.TimerThread.run(Timer.java:462)
这是来自activemq.xml的快照
<persistenceAdapter>
<kahaDB directory="${activemq.data}/kahadb"/>
</persistenceAdapter>
<transportConnectors>
<!-- <transportConnector name="openwire" uri="tcp://localhost:61616"/> -->
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616"/>
<transportConnector name="stomp" uri="stomp://localhost:61613"/>
</transportConnectors>
<networkConnectors>
<!-- by default just auto discover the other brokers -->
<networkConnector name="defaultNetwork" uri="multicast://default"/>
<!--
<networkConnector name="host1 and host2" uri="static://(tcp://host1:61616,tcp://host2:61616)" failover="true"/>
-->
</networkConnectors>
<systemUsage>
<systemUsage>
<memoryUsage>
<memoryUsage limit="512 mb"/>
</memoryUsage>
<storeUsage>
<storeUsage limit="100 gb"/>
</storeUsage>
<tempUsage>
<tempUsage limit="50 gb"/>
</tempUsage>
</systemUsage>
</systemUsage> …Run Code Online (Sandbox Code Playgroud) 我正在尝试GridView类似于这个http://framerjs.com/examples/preview/#delayed-animations.framer的动画.我尝试了slideUp动画,GridView但所有列都在同一点移动.我需要它类似于上面的链接.
尝试基于此实现自动完成
它看起来非常直接,但我无法使用ajax调用.不工作,我的意思是我没有看到下降.Firebug没有显示任何错误.
<script type="text/javascript">
var options, a;
jQuery(function(){
options = { serviceUrl:'vendors1.cfm',
delimiter: /(,|;)\s*/,
deferRequestBy: 0,
minChars:2};
a = $('#query').autocomplete(options);
});
</script>
Run Code Online (Sandbox Code Playgroud)
现在vendor1.cfm,返回一个';' 分类列表:ABC建筑; ABC建筑; ABC建筑; ABC PLUMBING&ELECTRICAL SUPPLY INC等
我该如何正确使用serviceURL.我有什么格式输出数据?