我使用ActivityCompat.invalidateOptionsMenu(MainActivity.this);这样我的菜单项"刷新"可以自动启用/禁用而无需使用必须触摸"菜单"选项(想象用户离开菜单...我需要"刷新"菜单项自动禁用和启用自己).
ActivityCompat.invalidateOptionsMenu(MainActivity.this)Android 11+ 的工作正常.但是我可以用什么来安装Android API <11?:S我搜索了这么多,但我找不到答案.有人可以帮我这个吗?
这适用于Android API 11+,使用onPrepareOptionsMenu和ActivityCompat.invalidateOptionsMenu(MainActivity.this).问题是尝试在Android API <11中完成.
这是我的onPrepareOptionsMenu方法:
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
if(menuRefreshEnable){
menu.getItem(0).setEnabled(true);
}
if(!menuRefreshEnable){
menu.getItem(0).setEnabled(false);
}
return true;
}
Run Code Online (Sandbox Code Playgroud) 我知道array_chunck允许将一个数组拆分成几个chuncks,但是chuncks的数量根据元素的数量而变化.我需要的是总是将数组分成特定数量的数组,例如4个数组.
下面的代码将数组拆分为3个chuncks,两个chuncks,每个包含2个元素,1个chunch包含1个元素.我想要的是将数组总是分成4个chuncks,无论数组的总元素数是多少,但总是试图在数组中使用像array_chunck函数那样均匀地划分元素.我怎么能做到这一点?这有什么PHP功能吗?
$input_array = array('a', 'b', 'c', 'd', 'e');
print_r(array_chunk($input_array, 2));
print_r(array_chunk($input_array, 2, true));
Run Code Online (Sandbox Code Playgroud)
谢谢.
我正在开发一个Android应用程序,我在其中使用AsyncTask从使用JSON的Web服务获取信息,然后将其加载到ListView中.直到这里一切正常.
我使用了一个在onPreExecute()方法中启动的ProgressDialog,并在onPostExecute()方法中被解雇.在运行2.3.3 android版本的模拟器中,所有这些操作最多需要7/8秒.我已经使用运行2.3.6的真实设备进行了测试,该应用程序具有相同的行为.
但是,当我使用运行4.1 android版本的模拟器时,此操作需要65到70秒.当我删除ProgressDialog时,Android 2.3和4.1版本的操作需要7/8秒.我已多次测试所有这些场景.
为什么会这样?我没有4.1 android版本的任何真实设备来测试它所以我想知道这是否是一个模拟器问题?我试图使用正常的进度条圈,而不是ProgressDialog,但同样的事情发生,它只需要在Android 4.1版本中花费太长时间.
任何想法可能是这种奇怪行为的原因?:S
谢谢.
dmon和James McCracken这里是我活动的代码,你可以帮我吗?
public class MainActivity extends Activity {
private TextView tvTitleList;
private ListView lvDataSearch;
private ProgressDialog dialog;
private long timeStart;
private String[] dataSearch;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tvTitleList = (TextView) findViewById(R.id.tvTitleList);
lvDataSearch = (ListView) findViewById(R.id.lvDataSearch);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
public class ProcessUpdateList extends AsyncTask<Integer, String, String[]> {
@Override
protected void onPreExecute() {
timeStart = System.currentTimeMillis();
System.out.println("pre execute"); …Run Code Online (Sandbox Code Playgroud) 有人可以解释一下这些时间戳这种奇怪的行为吗?有一个应用程序将时间戳转换为如下日期:
1184947071570 - 07-20-2007 11:57
1190394533377 - 09-21-2007 13:08
我无法访问该应用程序的源代码.但是我从数据库中获取了时间戳,当我使用php转换为日期时,会发生以下情况:
1184947071570 - 20 April 1955 13:17:54
1190394533377 - 27 October 1991 14:39:45
我在php中使用了这段代码:
date("l, j F Y H:i:s", $timestamp)
Run Code Online (Sandbox Code Playgroud)
日期完全不同!我怎样才能得到正确的日期?
谢谢.