Java 如何定义应用程序';android中其他应用的屏幕方向?

Java 如何定义应用程序';android中其他应用的屏幕方向?,java,android,Java,Android,我有一个应用程序,我可以从中获得所有已安装应用程序及其图标的列表。这是我的密码: package com.powergroupbd.appfilter; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.Iterator; import java.util.List; import android.app.Activity; impor

我有一个应用程序,我可以从中获得所有已安装应用程序及其图标的列表。这是我的密码:

package com.powergroupbd.appfilter;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.Iterator;
import java.util.List;

import android.app.Activity;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.util.Log;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class ApplicationFilterActivity extends Activity {
    /** Called when the activity is first created. */

    ListView appfilter;
    // ArrayAdapter<Applications> adapter;
    PackageManager pck;
     ArrayList<Applications> results = new ArrayList<Applications>();


    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        appfilter = (ListView) findViewById(R.id.lvApp);

        PackageManager packageManager = this.getPackageManager();
        List<PackageInfo> applist = packageManager.getInstalledPackages(0);
        Iterator<PackageInfo> it = applist.iterator();
        while (it.hasNext()) {
            PackageInfo pk = (PackageInfo) it.next();
results.add(new Applications(pk.applicationInfo.loadIcon(packageManager), ""+pk.applicationInfo.loadLabel(packageManager)));
            Log.i("AppName", ""+pk.applicationInfo.loadLabel(packageManager));
}

         Collections.sort(results, new Comparator<Applications>() {
         @Override
         public int compare(Applications c1, Applications c2) {
         return c1.getAppname().compareToIgnoreCase(c2.getAppname());
         }
         });

        appfilter.setAdapter(new Customarrayadapter(this, results));
    }
}
package com.powergroupbd.appfilter;
导入java.util.ArrayList;
导入java.util.Collections;
导入java.util.Comparator;
导入java.util.Iterator;
导入java.util.List;
导入android.app.Activity;
导入android.content.pm.PackageInfo;
导入android.content.pm.PackageManager;
导入android.graphics.drawable.drawable;
导入android.os.Bundle;
导入android.util.Log;
导入android.widget.ArrayAdapter;
导入android.widget.ListView;
公共类ApplicationFilterActivity扩展活动{
/**在首次创建活动时调用*/
列表视图应用过滤器;
//阵列适配器;
包装管理器;
ArrayList结果=新建ArrayList();
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
appfilter=(ListView)findViewById(R.id.lvApp);
PackageManager PackageManager=this.getPackageManager();
List applist=packageManager.getInstalledPackages(0);
迭代器it=applist.Iterator();
while(it.hasNext()){
PackageInfo pk=(PackageInfo)it.next();
结果.添加(新应用程序(pk.applicationInfo.loadIcon(packageManager)),“+pk.applicationInfo.loadLabel(packageManager));
Log.i(“AppName”,“pk.applicationInfo.loadLabel(packageManager));
}
Collections.sort(results,newcomparator(){
@凌驾
公共整数比较(应用程序c1、应用程序c2){
返回c1.getAppname().compareToIgnoreCase(c2.getAppname());
}
});
setAdapter(新的Customarrayadapter(this,results));
}
}

但现在我想,如果我点击一个列表项,那么从下一次开始,特定的应用程序将以横向方向打开,我需要知道如何才能做到这一点?

我的个人经验是,你试图做的是不可能的。无法从其他应用程序强制应用程序仅以横向模式显示。如果我理解正确,您希望在横向模式下打开所选应用程序,即使设备处于纵向模式,对吗?

是的,您是正确的,但我确信这是可能的,因为这种类型的应用程序已经在google play中,有人能给我一个解决方案吗?