即使申请setMaxDate()了datepicker,我仍然可以在棒棒糖5.0.1上选择禁用日期.除了lollipop 5.0.1之外,该代码适用于所有其他版本的android.
在通过设置限制日期之后setMaxDate(),没有用户应该能够选择禁用日期.我如何以编程方式实现此目的DatePicker?
我试过以下代码: -
datePickerDialog = new DatePickerDialog(myContext, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
}
}, mYear, mMonth, mDay);
datePickerDialog.getDatePicker().setMaxDate(System.currentTimeMillis());
datePickerDialog.setCanceledOnTouchOutside(true);
datePickerDialog.setCancelable(true);
datePickerDialog.show();
Run Code Online (Sandbox Code Playgroud)
我也试过以下解决方案,但这些似乎不起作用: -
datePickerDialog.getDatePicker().setMaxDate(System.currentTimeMillis());
Run Code Online (Sandbox Code Playgroud)
和
Calendar maxCal = Calendar.getInstance();
datePickerDialog.getDatePicker().setMaxDate(maxCal.getTimeInMillis());
Run Code Online (Sandbox Code Playgroud)
和
Date maxDate = new Date();
datePickerDialog.getDatePicker().setMaxDate(maxDate.getTime());
Run Code Online (Sandbox Code Playgroud)
请提供适用于棒棒糖的解决方案setMaxDate().
或者,如果您有任何其他答案,请尝试包含官方报价和资源或链接(如android开发者网站),如果您知道简要的详细信息.提前致谢.
我正在比较新NetworkStats类与TrafficStats测量网络接口和给定应用程序的流量(pex Chrome)
由于TrafficStats自设备启动以来有值,我正在执行的测试是这样的:
获得的数据TrafficStats是这样的:
TrafficStats.getTotalRxBytes() aprox 17.21 MB
TrafficStats.getUidRxBytes(chromeUid) aprox 13.22 MB
Run Code Online (Sandbox Code Playgroud)
我授予了权限NetworkStats,我获得的值是这样的:
wifiBucket.getRxBytes() + mobileBucket.getRxBytes() aprox 17.23 MB
dataFromWiFiBucket[1] + dataFromMobileBucket[1] gives 0 bytes
Run Code Online (Sandbox Code Playgroud)
从中获取数据的代码NetworkStats如下:
long timeStamp = System.currentTimeMillis();
long bootTime = System.currentTimeMillis() - SystemClock.elapsedRealtime();
NetworkStats.Bucket wifiBucket = networkStatsManager.querySummaryForDevice(ConnectivityManager.TYPE_WIFI, null, bootTime, timeStamp);
NetworkStats.Bucket mobileBucket = networkStatsManager.querySummaryForDevice(ConnectivityManager.TYPE_MOBILE, subscriberID, bootTime, timeStamp);
NetworkStats wifiBucketForApp = networkStatsManager.queryDetailsForUid(ConnectivityManager.TYPE_WIFI, null, bootTime, timeStamp, chromeUid);
NetworkStats mobileBucketForApp = networkStatsManager.queryDetailsForUid(ConnectivityManager.TYPE_MOBILE, subscriberID, bootTime, …Run Code Online (Sandbox Code Playgroud) 我已经设置了一个Checkbox,现在如果未经检查,mediaplayers应该立即取消静音,当检查立即静音时,现在问题是当我选中/取消选中复选框时,声音不会立即静音,但是最近我重新开始活动.. . 我怎么解决这个问题?
该计划的主要代码:
public class QuizActivity extends AppCompatActivity {
private ActionBarDrawerToggle mToggle;
private QuestionLibrary mQuestionLibrary = new QuestionLibrary();
private TextView mScoreView;
private TextView mQuestionView;
private Button mButtonChoice1;
private Button mButtonChoice2;
private Button mButtonChoice3;
private String mAnswer;
private int mScore = 0;
private int mQuestionNumber = 0;
Dialog dialog;
Dialog dialog2;
TextView closeButton;
TextView closeButton2;
CheckBox checkBoxmp;
private MediaPlayer mp, mp2;
SharedPreferences mypref;
SharedPreferences.Editor editor;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); …Run Code Online (Sandbox Code Playgroud) 在 oppo f1 5.1 版本中运行应用程序时,logcat 显示以下错误:
ANR_LOG: >>> msg's executing time is too long
Blocked msg = { when=-15s421ms what=0 target=android.view.Choreographer$FrameHandler callback=android.view.Choreographer$FrameDisplayEventReceiver } , cost = 15162 ms
>>>Current msg List is:
Current msg <1> = { when=-15s412ms what=0 target=android.os.Handler callback=android.support.v4.content.res.ResourcesCompat$FontCallback$2 }
Current msg <2> = { when=-15s410ms what=0 target=android.os.Handler callback=android.support.v4.content.res.ResourcesCompat$FontCallback$2 }
Current msg <3> = { when=-15s408ms what=0 target=android.os.Handler callback=android.support.v4.content.res.ResourcesCompat$FontCallback$2 }
Current msg <4> = { when=-15s405ms what=0 target=android.os.Handler callback=android.support.v4.content.res.ResourcesCompat$FontCallback$2 }
Current msg <5> = { when=-15s403ms what=0 target=android.os.Handler …Run Code Online (Sandbox Code Playgroud) 所以最近我一直在使用包含一些信息的智能卡,我在这里试图实现的是使用智能卡读卡器通过任何 Android 智能手机从这些智能卡中获取这些数据。我一直在使用HID OMNIKEY 3021 USB智能卡读卡器,它可以读取这些卡(我知道这个读卡器可以通过 Windows 应用程序与这些卡配合使用,因为我已经亲自测试过了)
现在,Android 提供了USB 主机,只要 Android 智能手机支持它,就可以读取任何 USB 主机。
我正在尝试使用 USB 主机提供的这些类来访问此卡内的数据。
我检测任何 USB 主机的代码:
private static final String ACTION_USB_PERMISSION = "com.android.example.USB_PERMISSION";
PendingIntent mPermissionIntent = PendingIntent.getBroadcast(this, 0, new Intent(ACTION_USB_PERMISSION), 0);
IntentFilter filter = new IntentFilter(ACTION_USB_PERMISSION);
registerReceiver(mUsbReceiver, filter);
IntentFilter attachedFilter = new IntentFilter(UsbManager.ACTION_USB_DEVICE_ATTACHED);
registerReceiver(mUsbAttachedReceiver, attachedFilter);
private final BroadcastReceiver mUsbAttachedReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
Utils.writeStringToTextFile("\n1 .Get an action : " …Run Code Online (Sandbox Code Playgroud) 在使用Fragment用法调用我的活动时,我遇到了一个奇怪的问题.我得到的错误就像,
java.lang.IllegalStateException:Fragment ScoreFragment {ee2b833 id = 0x7f0e0198}未附加到Activity
在第146行.我的片段代码有错误如下所示
if(mPageFlag.equalsIgnoreCase(getString(R.string.winners))){
Run Code Online (Sandbox Code Playgroud)
我的完整代码如下,
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getArguments() != null) {
mPageFlag = getArguments().getString(ARG_PAGE_FLAG);
}
}
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
if(isVisibleToUser && !mIsPageLoaded){
mContext = getActivity();
mIsPageLoaded = true;
if(mPageFlag.equalsIgnoreCase(getString(R.string.winners))){
new getcontestscorewinners(mContext).execute();
}else{ //
new getcontestscorewinnersNew(mContext).execute();
}
}
}
public class getcontestscorewinners extends AsyncTask<String, Void, String> {
boolean response = false;
private Context mContext;
public getcontestscorewinners(Context context) {
mContext = context;
}
@Override
protected void onPreExecute() …Run Code Online (Sandbox Code Playgroud)