我是Xamarin.forms开发的新手,我正在尝试编写一些UI测试.
我在Mac上并遵循了本指南,测试在iOS上运行良好.但是,对于Android测试,模拟器甚至不启动并提供以下输出:
SetUp:System.Exception:执行失败:/ Users/me/Library/Developer/Xamarin/android-sdk-macosx/platform-tools/adb -s emulator-5554 shell md5 /data/app/com.mysite.my_app- 1/base.apk - 退出代码:127/system/bin/sh:md5:找不到
我发现这很奇怪,因为当我运行Android模拟器进行调试时,我没有得到任何与md5相关的错误.
任何人都知道需要做些什么才能运行这些Android测试?
我试图将参数传递给a Fragment.
点击Viewa后Fragment,我将我替换Fragment为另一个并将数据传递给下一个Fragment.
我的点击动作:
public void onClick(View view) {
Bundle args = new Bundle();
args.putSerializable("order", orders.get(position));
OrderDetailFragment orderDetailFragment = new OrderDetailFragment();
orderDetailFragment.setArguments(args);
FragmentManager fragmentManager = ((AppCompatActivity) context).getSupportFragmentManager();
fragmentManager.beginTransaction()
.replace(R.id.order_activity_content_frame, orderDetailFragment)
.addToBackStack("orderDetails")
.commit();
}
Run Code Online (Sandbox Code Playgroud)
但在我的目的地Fragment,savedInstanceState即将来临null.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater,
ViewGroup container,
Bundle savedInstanceState) {
super.onCreateView(inflater, container, savedInstanceState);
order = (Order) savedInstanceState.getSerializable("order");
View rootView = inflater.inflate(R.layout.fragment_order_details, container, false); …Run Code Online (Sandbox Code Playgroud) 我在重复当前歌曲的onCompletion听众中使用以下代码MediaPlayer。
if (isRepeat) {
if (mMediaPlayer.isPlaying()) {
mMediaPlayer.stop();
mMediaPlayer.reset();
}
try {
mMediaPlayer.setDataSource(MainActivity.localTrackList.get(MainActivity.currentOffset).getPath());
mMediaPlayer.prepareAsync();
} catch (IOException e) {
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
但是我收到以下错误消息,
at android.media.MediaPlayer._setDataSource(Native Method)
09-15 09:05:19.884 12545-12545/ W/System.err: at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1115)
09-15 09:05:19.884 12545-12545/ W/System.err: at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1100)
09-15 09:05:19.884 12545-12545/ W/System.err: at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1079)
09-15 09:05:19.884 12545-12545/ W/System.err: at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1028)
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题?
如何动态选择应用程序的启动活动?
以此方案为例:用户第一次打开应用程序时,他将看到AuthenticationActivity,之后,他将看到MainActivity.如果他退出,他将再次看到AuthenticationActivity.
我不希望使用闪屏或类似的东西,我不知道是否有这样做的任何方式.
我想在调用setContentView之前检查MainActivity的onCreate方法中是否有任何帐户,如果没有,则显示AuthenticationActivity,但对我来说感觉还不错.
我正在尝试使用Jexcel API创建一个Excel文件,并使用手机上的应用程序对其进行写入。当我运行该应用程序时,它会抛出一个FileNotFoundException。我什至尝试根据另一个问题的答案来创建文本文件,但是会引发相同的错误。我已在清单中授予了适当的权限,但我似乎仍然无法查明问题所在。请帮忙。
这是我的代码
public WritableWorkbook createWorkbook(String fileName){
//Saving file in external storage
File sdCard = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);
File directory = new File(sdCard.getAbsolutePath() + "/bills");
//create directory if not exist
if(!directory.isDirectory()){
directory.mkdirs();
}
//file path
file= new File(directory, fileName);
if (file.exists())
Log.e(taf,"file created");
else
Log.e(taf,"file not created");
WorkbookSettings wbSettings = new WorkbookSettings();
wbSettings.setLocale(new Locale("en", "EN"));
wbSettings.setUseTemporaryFileDuringWrite(true);
WritableWorkbook workbook;
workbook=null;
try {
workbook = Workbook.createWorkbook(file, wbSettings);
Log.i(taf,"workbook created");
//Excel sheet name. 0 represents first sheet
WritableSheet sheet = workbook.createSheet("MyShoppingList", 0);
try …Run Code Online (Sandbox Code Playgroud) 我开发了一个应用程序 - 包含许多项目的listview.在每个项目中,我都有背景的textview.如何将文本移动到textview的中心?
我的商品代码:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="75dp"
android:layout_marginTop="10dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lesson_name"
android:id="@+id/tv_lesson"
android:layout_gravity="center_horizontal|top"
android:textAlignment="center"
android:textStyle="normal|bold"
android:textSize="20sp"
tools:targetApi="jelly_bean_mr1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="?????"
android:id="@+id/tv_time"
android:layout_gravity="center"
android:layout_marginTop="4dp"
android:layout_marginBottom="10dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/teacher_name"
android:id="@+id/tv_teacher"
android:layout_gravity="center_horizontal|bottom"
android:textStyle="italic" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="???????"
android:id="@+id/tv_cab"
android:layout_gravity="center_horizontal|bottom"
android:layout_marginTop="4dp"
android:layout_marginBottom="17dp" />
<TextView
android:layout_width="45dp"
android:layout_height="45dp"
**android:id="@+id/tv_number"**
android:layout_gravity="center_vertical"
android:background="@drawable/oval"
android:textIsSelectable="false"
android:textStyle="normal|bold"
android:textSize="40sp"
android:layout_marginLeft="10dp"
android:text="1"
android:textColor="#ffffff"
tools:targetApi="jelly_bean_mr1"
android:textAlignment="inherit" />
</FrameLayout>
Run Code Online (Sandbox Code Playgroud)
我的文字:
有什么建议?
PS我已经尝试了android gravity = center,我的textview移动到列表项的中心
我正在尝试对我的列表进行排序,但这个不起作用.方法collections.sort()什么都不做.
public boolean schedule(){
List<Task> keys = new ArrayList<Task>(g.tasks.keySet());
for(int i = 0; i<keys.size();i++){
System.out.println(keys.get(i).getSize());
}
Collections.sort(keys);
for(int i = 0; i<keys.size();i++){
System.out.println(keys.get(i).getSize());
}
return true;
}
Run Code Online (Sandbox Code Playgroud)
这是Task类中的compareTo()方法:
public int compareTo(Task t1) {
Integer csize = new Integer(t1.size);
int cmp = csize.compareTo(t1.size);
return cmp;
}
Run Code Online (Sandbox Code Playgroud)
这种方法有什么问题?
我正在处理 Firebase 推送通知,我想关闭MainActivity. 应用程序应在onMessageReceived()调用时完成。我也通过了,Context但它不起作用。在这种情况下,我会在应用程序打开时发送通知。我的代码:
主活动.java
public class MainActivity extends FragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new FirebaseMessagingService(MainActivity.this);
}
}
Run Code Online (Sandbox Code Playgroud)
FirebaseMessagingService.java
public class FirebaseMessagingService extends
com.google.firebase.messaging.FirebaseMessagingService {
Context context;
public FirebaseMessagingService(Context ctx) {
this.context = ctx;
}
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
context.finish();
}
}
Run Code Online (Sandbox Code Playgroud) 我正在寻找一种方法来以编程方式更改我的BottomNavigationView.
我找到了如何更改图标颜色,我按如下方式操作:
fun setMenu(selected: Int) {
bottomNavigationMenu?.let {
it.menu.findItem(R.id.bottom_menu_home).icon
.setColorFilter(getMenuColor(R.id.bottom_menu_home, selected), PorterDuff.Mode.SRC_ATOP)
// more items
it.menu.findItem(R.id.bottom_menu_fidelity)?.icon
?.setColorFilter(getMenuColor(R.id.bottom_menu_fidelity, selected), PorterDuff.Mode.SRC_ATOP)
}
}
fun getMenuColor(id: Int, selected: Int): Int {
if (Singletons.restaurant.title.isBlank())
getRestaurant()
else {
if (id == selected) return (Singletons.restaurant.color)
else return ContextCompat.getColor(this, R.color.grey7E)
}
return (0)
}
Run Code Online (Sandbox Code Playgroud)
现在我正在寻找如何更改标题颜色。我正在寻找类似的东西
it.menu.findItem(R.id.bottom_menu_home).title // etc
Run Code Online (Sandbox Code Playgroud)
但我找不到正确的函数来做到这一点。
这是我的main_bottom_menu.xml项目:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:tools="http://schemas.android.com/tools"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/bottom_menu_home"
android:enabled="true"
android:icon="@drawable/ic_home"
android:iconTint="@color/cardview_dark_background"
android:title="@string/bottom_menu_home"
android:visible="false"
app:showAsAction="ifRoom" />
<!-- 3 more items -->
<item
android:id="@+id/bottom_menu_profile"
android:enabled="true" …Run Code Online (Sandbox Code Playgroud) 基本上我有一个音量按钮,SeekBar点击时显示隐藏,如何SeekBar在 2 或 3 秒不活动后再次隐藏?
我只是想知道如何在SeekBar不改变其进度的情况下检查自可见以来花费了多少时间!?