小编Dar*_* K.的帖子

使用AsyncTaskLoader和Fragment的方法onCreateLoader中的类型不兼容

我考虑了使用AsyncTaskLoader和Fragment(https://gist.github.com/codeswimmer/884591)的一些例子,我试图做同样的事情.但是现在我无法修复不兼容的类型错误 - 在onCreateLoader方法中.我不知道为什么会这样,因为我也做了同样的事情.

FeedLoader.java

public class FeedLoader extends AsyncTaskLoader<ArrayList<RSSItemData>> {

    ArrayList<RSSItemData> listData;
    Context ctx;
    RSSItemData rssItem;
    final Integer HTTP_CONNECTION_TIMEOUT = 15;
    DBHelper dbHelper;


    public FeedLoader(Context context) {
        super(context);
        this.ctx = context;
        dbHelper = new DBHelper(ctx);
    }


    @Override
    public ArrayList<RSSItemData> loadInBackground() {

        listData = new ArrayList<RSSItemData>();

        if(!BaseUtils.isNetworkAvailable(ctx)) return getNewsFromDB();

        if(doWeHaveAnyNews()){

            Log.d("myLogs", "We have news!");

            String data = JSONUtils.getJSON("http://I-changed-URL.com", HTTP_CONNECTION_TIMEOUT*1000, ctx);
            JSONResult result  = new Gson().fromJson(data, JSONResult.class);
            listData = result.items;

            deleteAllNewsFromDB();
            putNewsIntoDB(listData);

        }
        else{

            Log.d("myLogs", "No news, retrieve from database"); …
Run Code Online (Sandbox Code Playgroud)

android asynctaskloader

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

如果 react-router4 中的位置没有改变,如何防止 history.push?

如果当前页面是site.com/one并且我正在点击<Link to='/one'>One</Link>,它会在每次点击时将新项目推送到历史记录(但位置不会改变)。如何防止?这真是愚蠢的行为。

javascript reactjs react-router

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

Socket.io的动态客房

我是node.js和socket.io的新手.我不明白如何与房间一起工作.我正在创建类似私人消息的东西.每对用户都有自己独特的空间.

来自文档:

io.on('connection', function(socket){
  socket.join('some room');
});
Run Code Online (Sandbox Code Playgroud)

但我需要从客户端创建一个房间.因为它很有活力.怎么样?

我遇到了一些例子https://gist.github.com/crtr0/2896891

server.js

io = socketio.listen(server);

io.sockets.on('connection', function(socket) {
    socket.on('room', function(room) {
        socket.join(room);
    });
});

room = "abc123";
io.sockets.in(room).emit('message', 'what is going on, party people?');
Run Code Online (Sandbox Code Playgroud)

这条线让我抓狂.在我看来这很愚蠢.因为服务器永远不知道使用哪个房间.服务器只能处理多个房间.

room = "abc123";
Run Code Online (Sandbox Code Playgroud)

请帮助或解释.

node.js socket.io

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

如何在 React Material-UI 中覆盖 FormHelperText 样式?

我正在使用 React Material-UI库,但不明白如何覆盖 FormHelperText 样式?

const { classes } = this.props
...
<TextField
  name='username'
  label='Username'
  error={this.state.usernameInvalid}
  helperText={this.state.usernameError}
  classes={{
    root: classes.textField,
    FormHelperText: classes.helperText // <-- how to override by right way?
  }}
  onChange={this.handleInputChange}
/>
...
export default withStyles(styles)(SignInPopup)
Run Code Online (Sandbox Code Playgroud)

款式:

const styles = () => ({
  textField: {
    width: '100%'
  },
  helperText: {
    position: 'absolute',
    bottom: '-50%'
  }
})
Run Code Online (Sandbox Code Playgroud)

我有这个错误:

Warning: Material-UI: the key `FormHelperText` provided to the classes property is not implemented in FormControl.
You can only override one of …
Run Code Online (Sandbox Code Playgroud)

reactjs material-ui

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