我有一个名为Fruit的课程.我正在创建此类的列表并在列表中添加每个水果.我想根据水果名称的顺序对此列表进行排序.
public class Fruit{
private String fruitName;
private String fruitDesc;
private int quantity;
public String getFruitName() {
return fruitName;
}
public void setFruitName(String fruitName) {
this.fruitName = fruitName;
}
public String getFruitDesc() {
return fruitDesc;
}
public void setFruitDesc(String fruitDesc) {
this.fruitDesc = fruitDesc;
}
public int getQuantity() {
return quantity;
}
public void setQuantity(int quantity) {
this.quantity = quantity;
}
}
Run Code Online (Sandbox Code Playgroud)
我正在使用for循环创建它的列表
List<Fruit> fruits= new ArrayList<Fruit>();
Fruit fruit;
for(int i=0;i<100;i++)
{
fruit = new fruit();
fruit.setname(...);
fruits.add(fruit);
}
Run Code Online (Sandbox Code Playgroud)
我需要使用列表中每个对象的水果名称对此arrayList进行排序 …
我ViewPager用于刷卡之间Fragments,但我可以使用ViewPager在Views简单的XML布局之间滑动吗?
这是AdapterViewPager的页面,用于在片段之间滑动:
import java.util.List;
import com.app.name.fragments.TipsFragment;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.app.FragmentTransaction;
import android.view.ViewGroup;
public class PageAdapter extends FragmentPagerAdapter {
/**
*
*/
List<Fragment> fragments;
public PageAdapter(FragmentManager fm,List<Fragment> frags) {
super(fm);
fragments = frags;
}
@Override
public Fragment getItem(int arg0) {
// TODO Auto-generated method stub
return TipsFragment.newInstance(0, 0);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return 4;
}
@Override
public void destroyItem(ViewGroup container, …Run Code Online (Sandbox Code Playgroud) 我采取tabhost使用FragmentActivity,第一个选项卡下,我加载一个包含一个值得欢迎的片段Viewpager和CirclePageIndIcator,我需要加载在侧4次是WelcomeFragment
这是我的WelcomeFragment
public class WelcomeFragment extends Fragment
{
PageAdapter mAdapter;
ViewPager mPager;
CirclePageIndicator mIndicator;
List<Fragment> fragments;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.frag_welcome_layout,null);
mPager=(ViewPager)view.findViewById(R.id.myViewPager);
mIndicator=(CirclePageIndicator)view.findViewById(R.id.circlePageIndicator1);
fragments=new ArrayList<Fragment>();
return view;
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
Fragment fragment;
for(int i=0;i<4;i++)
{
fragment= Fragment.instantiate(getActivity(), TipsFragment.class.getName());
fragments.add(fragment);
}
mAdapter = new PageAdapter(getFragmentManager(),fragments);
mPager.setAdapter(mAdapter);
mIndicator.setViewPager(mPager);
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的页面适配器
public class PageAdapter extends FragmentPagerAdapter implements Serializable{
List<Fragment> fragments;
public PageAdapter(FragmentManager …Run Code Online (Sandbox Code Playgroud) android android-tabhost android-fragments android-viewpager viewpagerindicator
我的主页中有一个滚动视图,在该滚动视图中,每个回收视图的布局有 2 个布局,每个回收视图将水平滚动。当我尝试滚动 recyclerview 时,scrollview 的滚动会被干扰,并且 scrollview 开始在垂直方向滚动。所以我尝试了下面的代码。
mRecyclerView.addOnItemTouchListener(new RecyclerView.OnItemTouchListener() {
@Override
public boolean onInterceptTouchEvent(RecyclerView rv, MotionEvent e) {
int action = e.getAction();
switch (action) {
case MotionEvent.ACTION_MOVE:
rv.getParent().requestDisallowInterceptTouchEvent(true);
break;
}
return false;
}
@Override
public void onTouchEvent(RecyclerView rv, MotionEvent e) {
}
@Override
public void onRequestDisallowInterceptTouchEvent(boolean disallowIntercept) {
}
});
Run Code Online (Sandbox Code Playgroud)
然后我可以在触摸 recyclerview 时控制水平滚动,但是现在的问题是当我触摸 recyclerview 时我无法垂直滚动我的滚动视图。任何建议请。我的确切需求是我需要滚动视图,并且在滚动视图内部几乎没有回收器视图,它将像谷歌 Play 商店应用程序一样工作。
这是我的布局
<com.sothree.slidinguppanel.SlidingUpPanelLayout
android:id="@+id/sliding_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
sothree:umanoPanelHeight="368dp"
sothree:umanoParallaxOffset="2dp"
sothree:umanoOverlay="false"
android:gravity="bottom"
sothree:umanoFadeColor="#00000000"
sothree:umanoDragView="@+id/dragView"
sothree:umanoScrollableView="@+id/svScroll"
sothree:umanoShadowHeight="0dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:id="@+id/dragView"
android:layout_width="match_parent"
android:layout_height="wrap_content" …Run Code Online (Sandbox Code Playgroud) android gesture android-scrollview android-recyclerview android-touch-event
创建一个集成Twitter的应用程序.我用这个教程:
http://blog.blundell-apps.com/sending-a-tweet/
package com.blundell.tut.ttt;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.webkit.WebView;
import android.widget.Button;
import android.widget.Toast;
import twitter4j.Twitter;
import twitter4j.TwitterException;
import twitter4j.TwitterFactory;
import twitter4j.auth.AccessToken;
import twitter4j.auth.RequestToken;
public class TweetToTwitterActivity extends Activity {
private static final String TAG = "Blundell.TweetToTwitterActivity";
/** Name to store the users access token */
private static final String PREF_ACCESS_TOKEN = "accessToken";
/** Name to store the users access token secret */
private static final String PREF_ACCESS_TOKEN_SECRET …Run Code Online (Sandbox Code Playgroud) 我正在尝试在片段中动态加载SupportMapFragment,这是我的onCreateView()方法:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View contentView = inflater.inflate(R.layout.frag_map_layout, null);
shopDtos=ShopListFragment.shopDtos;
fragment =SupportMapFragment.newInstance();
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.replace(R.id.map_content, fragment);
ft.commit();
map = fragment.getMap();
mapMarker = map.addMarker(new MarkerOptions().position(new LatLng(0, 0))
.icon(BitmapDescriptorFactory
.fromResource(R.drawable.maps_pin)));
return contentView;
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,我将谷歌地图映射为null.有关如何动态创建mapfragment的任何建议?
我需要按字母顺序对名称列表进行排序,为此我使用interfase comperator对名称进行排序
@Override
public int compareTo(ContactModel another) {
// TODO Auto-generated method stub
return getname().compareTo(another.getname());
}
Run Code Online (Sandbox Code Playgroud)
假设这是我的名字数组
123vinish
23Sathya
24mahesh
Ranjith
Vipin
Bibin
Shine
Thomas
Run Code Online (Sandbox Code Playgroud)
我需要按照一个序列来排序,其中带有数字的名称必须最后
Bibin
Ranjith
Shine
Thomas
Vipin
123Vinish
23Sathya
24mahesh
Run Code Online (Sandbox Code Playgroud)
我们如何实现这一点
我创建一个列表视图,并在我的自定义对话框中实现该列表视图.该列表视图使用数组适配器,在我的数组适配器中,我使用自己的布局和所需的颜色.代码如下.
listView = new ListView(context);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(Loged.this,
R.layout.my_spinner_layout, items);
listView.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)
在这里,单击我的列表项的监听器工作正常.
问题现在开始了.我的自定义警报对话框中需要一个列表视图,每行包含一个单选按钮.我使用相同的方法.这是我的代码.
listView = new ListView(context);
ArrayAdapter<String>adapter = new ArrayAdapter<String>(context,R.layout.my_single_choice_layout, choice);
listView.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)
这里可以同时检查所有radioButtons.我的听众工作不正常
my_spinner_layout_xml
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:paddingLeft="10dp"
style="@style/ListItemTextColor"
/>
Run Code Online (Sandbox Code Playgroud)
和my_single_choice_layout.xml
<?xml version="1.0" encoding="utf-8"?>
<RadioButton xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:id="@+id/my_choice_radio"
android:layout_height="match_parent"
android:button="@null"
android:drawableRight="@android:drawable/btn_radio"
android:text="Option"
style="@style/ListItemTextColor" >
</RadioButton>
Run Code Online (Sandbox Code Playgroud) 我使用Twitter和使用API获取推文,我正在使用twitter4j库.在那里,我把推文日期定为" Thu Feb 26 00:16:19 EST 2015",这是一个日期字符串.如何将此日期字符串解析为Date对象.
我是 Kotlin 的初学者,并试图在 android 开发中实现 MVVM 设计模式。我必须在片段中实现一个 Recyclerview。由于 api 调用是在 viewmodel 中观察到的,我们如何从 viewmodel 类将带有值的适配器设置为 recyclerview。
我的片段类如下所示
class NotesFragment : Fragment() {
lateinit var binding:FragmentNotesBinding
lateinit var viewModel:NoteListViewModel
companion object {
fun newInstance(param1: String): NotesFragment {
val fragment = NotesFragment()
val args = Bundle()
fragment.arguments = args
return fragment
}
}
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?): View? {
binding = DataBindingUtil.inflate(inflater,R.layout.fragment_notes,container,false)
viewModel = NoteListViewModel(binding)
return binding.root
}
Run Code Online (Sandbox Code Playgroud)
我们将绑定对象传递给我们的 viewmodel 类并从 ViewModel 类中再次更新 viewModel 对象是一种很好的做法,如下所示
private fun onSuccess(success: NoteResponse?) …Run Code Online (Sandbox Code Playgroud) data-binding mvvm kotlin android-recyclerview android-livedata
嗨frnds我从api服务获得了一些数据,它包含日期也是日期格式 2013-09-06T14:15:11.557
它的格式是什么?我们如何将这个日期转换为 2013 sept 06 2:15
我使用这两种方法将它们转换为我的日期格式
public static Date stringToDate(String dateString)
{
Date date = null;
DateFormat df = new SimpleDateFormat(Constants.DATE_FORMAT_WITHOUT_TIME);
try {
date = df.parse(dateString);
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}
Run Code Online (Sandbox Code Playgroud)
和
public static String FormatDate(String dateString)
{
String s="";
Date date = stringToDate(dateString);
s = date.getDate()+" "+monthname[date.getMonth()+1]+" "+(date.getYear()+1900);
return s;
}
Run Code Online (Sandbox Code Playgroud)
这是我的日期格式常量,public static final String DATE_FORMAT_WITHOUT_TIME = "yyyy-MM-dd";
但解析无法正常工作
android ×8
java ×4
arraylist ×2
date ×2
sorting ×2
android-view ×1
collections ×1
data-binding ×1
date-format ×1
gesture ×1
kotlin ×1
mvvm ×1
radio-button ×1
twitter ×1