小编Rub*_*r19的帖子

如何从数据库中对项目进行分组并显示它们 - Android

我在Android应用程序中有收据和日志模型.收据有很多日志.

我按sortID和等级查询了group_by日志.

//recieve RecepitID and query to group logs
final long forwardedId = (long) getIntent().getExtras().get(String.valueOf("recepitID"));
List<Logs> logsList = new Select().from(Logs.class).where("Receipt = " + forwardedId).groupBy("SortID, Grade").execute();
Run Code Online (Sandbox Code Playgroud)

这种分组工作正常.问题是下一个.我需要有这样的输出(红圈中的部分): 在此输入图像描述 但我得到这样的:

在此输入图像描述

这是代码的一部分,我是如何做到这一点的.

public class LogsRecapitulation extends AppCompatActivity {

    private ListView mainListView;
    private BaseAdapter listAdapter;
    private TextView logsCount;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.recapitulation_listview);
        mainListView = (ListView) findViewById(R.id.ListViewItem);

        //recieve RecepitID and query to group logs
        final long forwardedId = (long) getIntent().getExtras().get(String.valueOf("recepitID"));
        List<Logs> logsList = new Select().from(Logs.class).where("Receipt = " + forwardedId).groupBy("SortID, Grade").execute();

        TextView result …
Run Code Online (Sandbox Code Playgroud)

java android android-layout qsqlquery

40
推荐指数
1
解决办法
1339
查看次数

如何在同一个片段中创建多个Retrofit回调 - android

我试图在片段多个按钮中实现,每个按钮需要从web api获取一些数据.

我为一个按钮创建了改装回调.现在我在创建另一个按钮以从另一个api获取数据时遇到了一些麻烦.

这是我的界面:

public interface APIService {

        @GET("/api/partners.json")
        Call<List<Partner>> getPartners();

        @GET("/api/drivers.json")
        Call<List<Driver>> getDrivers();

        @GET("/api/warehouses.json")
        Call<List<Warehouse>> getWarehuses();
}
Run Code Online (Sandbox Code Playgroud)

这是我的api助手类:

public class APIHelper {

    public static final String BASE_URL = "https://part-of-url.herokuapp.com/";

    public static APIService apiService;

    public static APIService getApiService() {
        if (apiService == null) {
            Retrofit retrofit = new Retrofit.Builder().baseUrl(BASE_URL)
                    .addConverterFactory(GsonConverterFactory.create()).build();
            apiService = retrofit.create(APIService.class);
        }
        return apiService;
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的驱动程序pojo模型(所有pojo模型几乎相同)

public class Driver {

    @Expose
    private List<String> driver_name = new ArrayList<String>();

    public List<String> getDriver_name() { return driver_name; }

    public void setDriver_name(List<String> …
Run Code Online (Sandbox Code Playgroud)

android android-fragments retrofit2

7
推荐指数
1
解决办法
7357
查看次数

从数据库填充ExpandableListView - 无法正常工作

我有表收据和日志和表收据has_many日志.因此,在我的LogsRecapitulation.class上,我按分类和等级对这些日志进行分组(这两列来自表日志).

我试图通过ExpandableListView来做到这一点.每组日志父元素将包含数据库中每个组的排序和等级.

子元素将具有textViews,用于记录子元素,质量,价格和一些计算价格的日志.它应该看起来像这样:

在此输入图像描述

我创建了expandableListView布局和适配器.但是现在我在填充数据库中的父元素和子元素时遇到了麻烦.

这是我的代码,所以你可以看到我到目前为止所做的工作.

这是expandableListAadapter类:

public class ExpandableListAdapter extends BaseExpandableListAdapter {

    private Context _context;
    private List<String> _listDataHeader;
    private HashMap<String, List<String>> _listDataChild;

    public ExpandableListAdapter(Context context, List<String> listDataHeader, HashMap<String, List<String>> listDataChild) {
        this._context = context;
        this._listDataHeader = listDataHeader;
        this._listDataChild = listDataChild;
    }

    @Override
    public Object getChild(int groupPosition, int childPosition) {
        return this._listDataChild.get(this._listDataHeader.get(groupPosition)).get(childPosition);
    }

    @Override
    public long getChildId(int groupPosition, int childPosition) {
        return childPosition;
    }

    @Override
    public View getChildView(int groupPosition, final int childPosition, boolean isLastChild,
                             View convertView, ViewGroup parent) {
        final String …
Run Code Online (Sandbox Code Playgroud)

java sqlite android expandablelistview

5
推荐指数
0
解决办法
365
查看次数

如何使用 ng2-dragula 和角度元素调整器

我正在使用 Dragula 在我的桌子上进行拖放。另外,我使用插件角度调整器元素来调整表列的大小。所有这些都是我在 Angular2 中工作的。

所以我想要的是这个。我目前的情况就像图像上的这个灰色柱子。整个列的宽度是可拖动的,这使我在调整列大小时遇到​​问题。因此,当我尝试调整列大小时,它的作用就像拖放一样。我希望我的专栏像这个黄色的那样。有一些调整大小的空间。

这是我的 html 代码的一部分:

<div class="row" [dragula]='"one-bag"' [dragulaModel]='names'>
    <div class="col" *ngFor="let name of names"
         mwlResizable
         [validateResize]="validate"
         [resizeEdges]="{right: true}"
         [enableGhostResize]="false">
         <label>{{name}}</label>
    </div>  
</div>
Run Code Online (Sandbox Code Playgroud)

这是我一直在使用的缩放器。 https://github.com/mattlewis92/angular-ressized-element

问题:如何在同一表列上使用 ng2-dragula 和 resizer?

ng2-dragula angular

5
推荐指数
1
解决办法
1631
查看次数

仅显示一次登录活动,并在下次启动主活动时显示

我想在第一次进入app时打开login_activity,然后在第二次进入app打开main_activity.

我创造了一些东西,但它不会工作.所以我想知道我做错了什么?这是我的LoginActivity

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);

        userName = (EditText) findViewById(R.id.username);
        userPhone = (EditText) findViewById(R.id.userPhone);
        loginBtn = (Button) findViewById(R.id.buttonLogin);

        dbHandler = new LogsDBHandler(this);

        loginBtn.setOnClickListener(this);
        setTitle("AMS - biomasa | prijava");

       SharedPreferences pref = getSharedPreferences("ActivityPREF", Context.MODE_PRIVATE);
        if (pref.getBoolean("activity_executed", false)) {
            Intent intent = new Intent(this, MainActivity.class);
            startActivity(intent);
            finish();
        } else {
            SharedPreferences.Editor edt = pref.edit();
            edt.putBoolean("activity_executed", true);
            edt.commit();
        }
    }

    public void insert() {
        User user = new User (
                userName.getText().toString(),
                userPhone.getText().toString());
        dbHandler.addUser(user);
        Toast.makeText(getBaseContext(), "Prijavljeni ste!", Toast.LENGTH_SHORT).show();

    }

    @Override
    public …
Run Code Online (Sandbox Code Playgroud)

java android

1
推荐指数
1
解决办法
6771
查看次数

二元运算符 + 的错误操作数类型

我需要一个最多 20 位的数字,并且我正在使用 bigint。它在下面的行给了我这个错误(二元运算符 + 的操作数类型错误)。

BigInteger t = new BigInteger(my_number.getText().toString());
                my_number.setText(String.valueOf(t+1));
Run Code Online (Sandbox Code Playgroud)

java operands

0
推荐指数
1
解决办法
3779
查看次数