List of usage examples for android.text.format DateUtils formatElapsedTime
public static String formatElapsedTime(long elapsedSeconds)
From source file:net.potterpcs.recipebook.RecipeViewer.java
@SuppressWarnings("deprecation") @Override/* www. java 2s . c o m*/ public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.recipeviewer); app = (RecipeBook) getApplication(); data = app.getData(); preferences = PreferenceManager.getDefaultSharedPreferences(this); photoPref = preferences.getBoolean(getResources().getString(R.string.prefphotokey), true); dirPhotoPref = preferences.getBoolean(getResources().getString(R.string.prefdirphotokey), true); // Fill in the UI rvname = (TextView) findViewById(R.id.rvname); rvcreator = (TextView) findViewById(R.id.rvcreator); rvserving = (TextView) findViewById(R.id.rvserving); rvtime = (TextView) findViewById(R.id.rvtime); rvrating = (RatingBar) findViewById(R.id.rvrating); lvingredients = (GridView) findViewById(R.id.ingredients); lvdirections = (ListView) findViewById(R.id.directions); rid = Long.parseLong(getIntent().getData().getLastPathSegment()); RecipeData.Recipe r = data.getSingleRecipeObject(rid); rvname.setText(r.name); rvcreator.setText(r.creator); rvserving.setText(Integer.toString(r.serving)); rvtime.setText(DateUtils.formatElapsedTime(r.time)); rvrating.setRating(r.rating); photoUri = r.photo; if (photoPref && photoUri != null && !photoUri.equals("")) { rvphoto = (FrameLayout) findViewById(R.id.photofragment); ImageView iv = new ImageView(this); setOrDownloadImage(iv, photoUri); iv.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { FragmentTransaction ft = getSupportFragmentManager().beginTransaction(); PhotoDialog pd = PhotoDialog.newInstance(photoUri); pd.show(ft, "dialog"); } }); rvphoto.addView(iv); } directionsAdapter = new SimpleCursorAdapter(this, R.layout.recipedirectionrow, null, DIRECTIONS_FIELDS, DIRECTIONS_IDS, 0); directionsAdapter.setViewBinder(new DirectionViewBinder(this)); lvdirections.setAdapter(directionsAdapter); lvdirections.setDividerHeight(0); ingredientsAdapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_1, null, INGREDIENTS_FIELDS, INGREDIENTS_IDS, 0); lvingredients.setAdapter(ingredientsAdapter); // Set up sharing intent shareIntent = ShareCompat.IntentBuilder.from(this).setSubject(r.name).setText(r.toText(this)) .setType("text/plain"); }
From source file:ca.rmen.android.scrumchatter.chart.MeetingChartFragment.java
private MeetingDisplayInfo createMeetingDisplayInfo(Teams.Team team, Meeting meeting) { return new MeetingDisplayInfo(getString(R.string.chart_member_speaking_time_title, team.teamName), getString(R.string.chart_total_duration, DateUtils.formatElapsedTime(meeting.getDuration())), TextUtils.formatDateTime(getContext(), meeting.getStartDate())); }
From source file:ca.rmen.android.scrumchatter.meeting.detail.MeetingCursorAdapter.java
/** * Set the view elements (TextView text, etc) for the given member of a * meeting./* w w w .j ava 2 s .co m*/ */ @Override public void onBindViewHolder(MeetingViewHolder holder, int position) { // Extract the fields we need from this cursor @SuppressWarnings("resource") MeetingMemberCursorWrapper cursorWrapper = new MeetingMemberCursorWrapper(getCursor()); MeetingMemberItemData meetingMemberItemData = new MeetingMemberItemData(); meetingMemberItemData.memberId = cursorWrapper.getMemberId(); meetingMemberItemData.memberName = cursorWrapper.getMemberName(); long duration = cursorWrapper.getDuration(); State meetingState = cursorWrapper.getMeetingState(); Long talkStartTime = cursorWrapper.getTalkStartTime(); // Find the Views we need to set up MeetingMemberListItemBinding binding = holder.binding; // if the talkStartTime is non-zero, this means the // member is talking (and started talking that long ago). meetingMemberItemData.isTalking = talkStartTime > 0; // Set up the start/stop button for this member. // If the meeting is finished, we hide the start/stop button. if (meetingState == State.FINISHED) { meetingMemberItemData.startStopButtonVisibility = View.INVISIBLE; } meetingMemberItemData.clickable = meetingState != State.FINISHED; // If the member is currently talking, show the chronometer. // Otherwise, show the duration that they talked (if any). if (meetingMemberItemData.isTalking) { long hasBeenTalkingFor = duration * 1000 + (System.currentTimeMillis() - talkStartTime); binding.tvDuration.setBase(SystemClock.elapsedRealtime() - hasBeenTalkingFor); binding.tvDuration.start(); meetingMemberItemData.durationColor = mColorChronoActive; startAnimation(binding.ivChatterFace); } else { binding.tvDuration.stop(); binding.tvDuration.setText(DateUtils.formatElapsedTime(duration)); meetingMemberItemData.durationColor = duration > 0 ? mColorChronoInactive : mColorChronoNotStarted; stopAnimation(binding.ivChatterFace); } @ColorRes int backgroundColorRes = (position % 2 == 0) ? R.color.row_background_color_even : R.color.row_background_color_odd; meetingMemberItemData.backgroundColor = ContextCompat.getColor(binding.getRoot().getContext(), backgroundColorRes); // Set the member id as a tag, so when the listener receives the // click action, it knows for which member the user clicked. binding.setItemData(meetingMemberItemData); binding.executePendingBindings(); }
From source file:org.proninyaroslav.libretorrent.adapters.TorrentListAdapter.java
@Override public void onBindViewHolder(ViewHolder holder, int position) { TorrentStateParcel state = currentItems.get(position).getState(); Utils.setBackground(holder.indicatorCurOpenTorrent, ContextCompat.getDrawable(context, android.R.color.transparent)); if (isSelected(position)) { Utils.setBackground(holder.itemTorrentList, ContextCompat.getDrawable(context, R.drawable.default_gray_rect)); } else {//from www .ja v a 2 s . co m Utils.setBackground(holder.itemTorrentList, ContextCompat.getDrawable(context, R.drawable.default_rect_ripple)); } holder.name.setText(state.name); holder.progress.setProgress(state.progress); String stateString = ""; switch (state.stateCode) { case DOWNLOADING: stateString = context.getString(R.string.torrent_status_downloading); break; case SEEDING: stateString = context.getString(R.string.torrent_status_seeding); break; case PAUSED: stateString = context.getString(R.string.torrent_status_paused); break; case STOPPED: stateString = context.getString(R.string.torrent_status_stopped); break; case FINISHED: stateString = context.getString(R.string.torrent_status_finished); break; case CHECKING: stateString = context.getString(R.string.torrent_status_checking); break; } holder.state.setText(stateString); String counterTemplate = context.getString(R.string.download_counter_template); String totalBytes = Formatter.formatFileSize(context, state.totalBytes); String receivedBytes; if (state.progress == 100) { receivedBytes = totalBytes; } else { receivedBytes = Formatter.formatFileSize(context, state.receivedBytes); } holder.downloadCounter.setText(String.format(counterTemplate, receivedBytes, totalBytes, state.progress)); String speedTemplate = context.getString(R.string.download_upload_speed_template); String downloadSpeed = Formatter.formatFileSize(context, state.downloadSpeed); String uploadSpeed = Formatter.formatFileSize(context, state.uploadSpeed); holder.downloadUploadSpeed.setText(String.format(speedTemplate, downloadSpeed, uploadSpeed)); String ETA; if (state.ETA == -1) { ETA = Utils.INFINITY_SYMBOL; } else if (state.ETA == 0) { ETA = " "; } else { ETA = DateUtils.formatElapsedTime(state.ETA); } holder.ETA.setText(ETA); holder.pauseButton.setStartDrawable(R.drawable.pause_to_play); holder.pauseButton.setEndDrawable(R.drawable.play_to_pause); holder.pauseButton.setState((state.stateCode == TorrentStateCode.PAUSED ? MorphButton.MorphState.END : MorphButton.MorphState.START)); if (curOpenTorrent != null && getItemPosition(curOpenTorrent) == position && Utils.isTwoPane(context)) { if (!isSelected(position)) { Utils.setBackground(holder.itemTorrentList, ContextCompat.getDrawable(context, R.color.accent_light)); } Utils.setBackground(holder.indicatorCurOpenTorrent, ContextCompat.getDrawable(context, R.color.accent)); } }
From source file:com.todoroo.astrid.timers.TimerControlSet.java
private void refreshDisplayView() { String est = null;/* ww w. j a v a 2 s . co m*/ int estimatedSeconds = estimated.getTimeDurationInSeconds(); if (estimatedSeconds > 0) { est = getString(R.string.TEA_timer_est, DateUtils.formatElapsedTime(estimatedSeconds)); } String elap = null; int elapsedSeconds = elapsed.getTimeDurationInSeconds(); if (elapsedSeconds > 0) { elap = getString(R.string.TEA_timer_elap, DateUtils.formatElapsedTime(elapsedSeconds)); } String toDisplay; if (!TextUtils.isEmpty(est) && !TextUtils.isEmpty(elap)) { toDisplay = est + ", " + elap; //$NON-NLS-1$ } else if (!TextUtils.isEmpty(est)) { toDisplay = est; } else if (!TextUtils.isEmpty(elap)) { toDisplay = elap; } else { toDisplay = null; } if (!TextUtils.isEmpty(toDisplay)) { displayEdit.setText(toDisplay); displayEdit.setTextColor(getColor(context, R.color.text_primary)); } else { displayEdit.setText(R.string.TEA_timer_controls); displayEdit.setTextColor(getColor(context, R.color.text_tertiary)); } }
From source file:net.simno.klingar.ui.PlayerController.java
@NonNull @Override// ww w .j a va 2 s. co m protected View onCreateView(@NonNull LayoutInflater inflater, @NonNull ViewGroup container) { View view = super.onCreateView(inflater, container); toolbarOwner.setConfig(ToolbarOwner.Config.builder().background(false).backNavigation(true) .titleAlpha(TITLE_GONE).build()); setHasOptionsMenu(true); queueRecyclerView.setLayoutManager(new LinearLayoutManager(getActivity())); queueRecyclerView.setHasFixedSize(true); queueRecyclerView.addItemDecoration(new DividerItemDecoration(itemDivider)); queueRecyclerView.setLayerType(View.LAYER_TYPE_HARDWARE, null); if (isQueueVisible) { queueRecyclerView.animate().alpha(1).setDuration(0).withLayer(); background.setImageAlpha(0); } else { queueRecyclerView.animate().alpha(0).setDuration(0).withLayer(); background.setImageAlpha(255); } seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { elapsedTime.setText(DateUtils.formatElapsedTime(progress)); } @Override public void onStartTrackingTouch(SeekBar seekBar) { isSeeking = true; } @Override public void onStopTrackingTouch(SeekBar seekBar) { musicController.seekTo(seekBar.getProgress() * 1000); isSeeking = false; } }); return view; }
From source file:com.xortech.map.MapsWithMe.java
/** * METHOD TO CHECK THE TIME DIFFERENCE OF THE RECEVIED SMS WITH THE CURRENT TIME * @param now/*from w w w . j a v a2 s. co m*/ * @param then * @return */ public String getDifference(long now, long then) { try { if (now > then) { return DateUtils.formatElapsedTime((now - then) / 1000L); } else { return "Time Error!"; } } catch (Exception e) { Log.e("Error: ", "" + e); return "Time Error!"; } }
From source file:com.xortech.sender.SenderReceive.java
/** * METHOD TO GET THE TIME DIFFERENCE FROM A SMS AND THE CURRENT TIME * @param now/* ww w . j a v a 2 s . co m*/ * @param then * @return */ public String getDifference(long now, long then) { try { if (now > then) { return DateUtils.formatElapsedTime((now - then) / 1000L); } else { return "Time Error!"; } } catch (Exception e) { return "Time Error!"; } }
From source file:net.potterpcs.recipebook.TimerFragment.java
void clearToZero() { startButton.setEnabled(true);//from w w w . ja va2 s . c o m stopButton.setEnabled(false); if (minutePicker == null) { timermin.setEnabled(true); timersec.setEnabled(true); } else { minutePicker.setEnabled(true); secondPicker.setEnabled(true); getActivity().findViewById(R.id.pickerlayout).setVisibility(View.VISIBLE); display.setVisibility(View.GONE); } if (display != null) { display.setText(DateUtils.formatElapsedTime(0)); } else { timermin.setText("00", BufferType.EDITABLE); timersec.setText("00", BufferType.EDITABLE); } }
From source file:org.dharmaseed.android.PlayTalkActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_play_talk); // Turn on action bar up/home button ActionBar actionBar = getSupportActionBar(); if (actionBar != null) { actionBar.setDisplayHomeAsUpEnabled(true); }//from w ww. j a va 2 s . c o m // Get the ID of the talk to display Intent i = getIntent(); talkID = (int) i.getLongExtra(NavigationActivity.TALK_DETAIL_EXTRA, 0); dbManager = DBManager.getInstance(this); // only hit the DB again if we know the talk is different than the one // we have saved. // for example, if the user selects a talk, exits, and re-opens it, no need // to hit the DB again, since we already have that talk saved if (talk == null || talk.getId() != talkID) { Cursor cursor = getCursor(); if (cursor.moveToFirst()) { // convert DB result to an object talk = new Talk(cursor); talk.setId(talkID); } else { Log.e(LOG_TAG, "Could not look up talk, id=" + talkID); cursor.close(); return; } cursor.close(); } // else we already have the talk, just re-draw the page // Set the talk title TextView titleView = (TextView) findViewById(R.id.play_talk_talk_title); titleView.setText(talk.getTitle()); // Set the teacher name TextView teacherView = (TextView) findViewById(R.id.play_talk_teacher); teacherView.setText(talk.getTeacherName()); // Set the center name TextView centerView = (TextView) findViewById(R.id.play_talk_center); centerView.setText(talk.getCenterName()); // Set the talk description TextView descriptionView = (TextView) findViewById(R.id.play_talk_talk_description); descriptionView.setText(talk.getDescription()); // Set teacher photo String photoFilename = talk.getPhotoFileName(); ImageView photoView = (ImageView) findViewById(R.id.play_talk_teacher_photo); Log.i(LOG_TAG, "photoFilename: " + photoFilename); try { FileInputStream photo = openFileInput(photoFilename); photoView.setImageBitmap(BitmapFactory.decodeStream(photo)); } catch (FileNotFoundException e) { Drawable icon = ContextCompat.getDrawable(this, R.drawable.dharmaseed_icon); photoView.setImageDrawable(icon); } // set the image of the download button based on whether the talk is // downloaded or not toggleDownloadImage(); // Set date TextView dateView = (TextView) findViewById(R.id.play_talk_date); String recDate = talk.getDate(); SimpleDateFormat parser = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); try { dateView.setText(DateFormat.getDateInstance().format(parser.parse(recDate))); } catch (ParseException e) { dateView.setText(""); Log.w(LOG_TAG, "Could not parse talk date for talk ID " + talkID); } // Get/create a persistent fragment to manage the MediaPlayer instance FragmentManager fm = getSupportFragmentManager(); talkPlayerFragment = (TalkPlayerFragment) fm.findFragmentByTag("talkPlayerFragment"); if (talkPlayerFragment == null) { // add the fragment talkPlayerFragment = new TalkPlayerFragment(); fm.beginTransaction().add(talkPlayerFragment, "talkPlayerFragment").commit(); } else if (talkPlayerFragment.getMediaPlayer().isPlaying()) { setPPButton("ic_media_pause"); } // Set the talk duration final TextView durationView = (TextView) findViewById(R.id.play_talk_talk_duration); double duration = talk.getDurationInMinutes(); String durationStr = DateUtils.formatElapsedTime((long) (duration * 60)); durationView.setText(durationStr); // Start a handler to periodically update the seek bar and talk time final SeekBar seekBar = (SeekBar) findViewById(R.id.play_talk_seek_bar); seekBar.setMax((int) (duration * 60 * 1000)); userDraggingSeekBar = false; userSeekBarPosition = 0; seekBar.setOnSeekBarChangeListener(this); final Handler handler = new Handler(); final MediaPlayer mediaPlayer = talkPlayerFragment.getMediaPlayer(); handler.post(new Runnable() { @Override public void run() { handler.postDelayed(this, 1000); if (talkPlayerFragment.getMediaPrepared() && !userDraggingSeekBar) { try { int pos = mediaPlayer.getCurrentPosition(); int mpDuration = mediaPlayer.getDuration(); seekBar.setMax(mpDuration); seekBar.setProgress(pos); String posStr = DateUtils.formatElapsedTime(pos / 1000); String mpDurStr = DateUtils.formatElapsedTime(mpDuration / 1000); durationView.setText(posStr + "/" + mpDurStr); } catch (IllegalStateException e) { } } } }); }